Ordem inversa de ObservableCollection
eu tenhoObservableCollection
que contém um objeto personalizado. Normalmente, os itens são adicionados no final da lista
O que eu estou procurando:
Itens sendo adicionados a partir docomeçando da lista.Isso pode mostrar apenas na interface do usuário, todo o meu programa já está usando as posições dos dados dentro desta lista. Portanto, os objetos dentro dele podem não alterar a ordem no código por trás.esteObservableColection
contém objetos Button (estilo personalizado). Esses botões estão sendo exibidos em umListBox
e dentro de umStackPanel
com layout Horizontal (para que os botões fiquem bem colocados um após o outro).
Problema:
Cada botão que é criado recebe umDateTime
. Um botão recém-adicionado sempre tem uma data mais recente que o botão antes disso.Todos os cálculos para isso estão acontecendo dentro de um temporizador(atualmente executando a cada segundo).
Então, basicamente, estou classificando esse tempo, mas depois de três botões, de repente, um botão é colocado no lado direito (em vez do lado esquerdo).
Por exemplo:
Btn3: 14:15:45 (correto)Btn4: 14:16:00 (errado) Btn2: 14:15:32 (correto) Btn1: 14:04:17 (correto)
Os primeiros 3 botões são adicionados corretamente no início da lista a cada vez. E de repente o quarto item está sendo adicionado no segundo lugar. Parece que nem sempre está comparando o tempo? Toda vez que um botão é criado,CollectionViewSource
método é chamado.
Há algo de errado com oCollectionViewSource
ou há uma maneira melhor de lidar com isso?