2009-04-29 20 views

Respuesta

2

Este es el tipo de cosas que pueden ser complicadas en WPF, aunque su jefe pensará que debería ser fácil, ya que se supone que WPF permite animaciones y efectos visuales llamativos. Después de todo, hay todo tipo de impresionantes demos de Silverlight/WPF en la web que se ven geniales y realmente venden la tecnología. Por supuesto, lo que su jefe no sabe es que esas demostraciones fueron escritas solo para mostrar las características fáciles y llamativas. Las cosas que son un poco diferentes de lo normal, sin embargo, tienen una forma desagradable de ser muy difícil.

Pero basta desvaríos, te daré un posible enfoque, aunque puede haber una mejor uno:

Vamos a suponer que usted ha limitado la cuadrícula de datos a algún tipo de colección, y por el bien de la discusión vamos a asume que es una lista de objetos Foo, es decir, List<foo> MyFoos. Luego, podría agregar una propiedad a la clase de FOO llamada BeingDeleted. Luego, en la plantilla de su DataRowView, active esta propiedad para comenzar un guión gráfico que anime un desvanecimiento o un colapso de esa fila en particular. Esto es algo asqueroso, ya que implica agregar una propiedad al objeto Foo que de otra manera no tendría nada que ver. Alternativamente, puede crear un contenedor especial o subclase de Foo.

+0

Así es como finalmente decidí implementar esto. Hubo algunos problemas con la sincronización de la lista encuadernada (ya que el sincronizador debería ignorar los elementos "casi eliminados"), y también tuve que eliminar esos elementos cuando finalizó la animación. El resultado final es un tanto desordenado (todo está estrechamente unido), pero supongo que no hay otra solución. – Andy

Cuestiones relacionadas