Pergunta

Eu transferi WPFToolkit, e eu estou usando o DataGrid fornecido neste pacote. Estou tentando animar um desaparecimento linha quando a linha é removido, mas não sei como fazê-lo. Alguém sabe como isso pode ser feito?

Foi útil?

Solução

Este é o tipo de coisa que pode ser complicado em WPF - embora o seu chefe vai pensar que deve ser fácil - desde WPF é suposto para permitir animação e efeitos visuais impressionantes. Afinal, existem todos os tipos de impressionantes demos Silverlight / WPF na web que olhar grande e realmente vender a tecnologia. De, é claro que seu chefe não sabe é que esses demos foram escritas apenas para mostrar as características, chamativos fáceis. Coisas que são um pouco diferente do que o padrão, no entanto, tem uma maneira desagradável de ser muito difícil.

Mas ranting suficiente, eu vou dar-lhe uma possível abordagem, embora possa haver uma melhor um:

Vamos supor que você tenha ligado o DataGrid a algum tipo de coleção, e por causa do argumento, vamos assumir a sua uma lista de objetos Foo, ou seja List<foo> MyFoos. Em seguida, você pode adicionar uma propriedade para a classe FOO chamado BeingDeleted. Em seguida, no modelo para o seu DataRowView, gatilho nesta propriedade para começar um storyboard que anima um fade-out ou o colapso dessa linha particular. Esta é uma espécie de bruto, uma vez que implica a adição de uma propriedade para o objeto Foo que pode ter nada a ver com isso de outra forma. Você pode alternativamente criar um invólucro especial ou sub-classe de Foo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top