Necesito tener un tipo de evento Sorted
para DataGrid
en una aplicación WPF pero no puedo encontrar la manera de obtenerlo.Cómo puedo recibir una notificación si una columna DataGrid está ordenada (y no ordenada)
Aquí es lo que he intentado:
El DataGrid
proporciona un evento Sorting
, pero no puedo usarlo, ya que es despedido antes de realizar la clasificación. El EventArgs
me da la columna que está ordenada pero no de la manera en que está ordenada, y si obtengo la dirección de clasificación, se establece en el valor anterior. Por supuesto, podría adivinar de qué se trata, ya que sé que cambia de ninguno a ascendente y finalmente a descendente, pero eso no sería una solución ya que fallaría si cambia el comportamiento del control.
Segundo intento:
El DataGrid
tiene una vista predeterminada que proporciona acceso a una SortDescriptionCollection
. Esta colección contiene todas las propiedades de clasificación, pero no veo ninguna posibilidad de permitirme informar sobre los cambios.
Tengo que decir que estoy buscando una solución lo más limpia posible, ya que se utilizará en un proyecto grande en el que no puedo usar soluciones que podrían fallar si el entorno cambia.
¿Alguien sabe por experiencia (o documentación?) Cómo podría resolver este problema?
Editar: para hacer más claro lo que quiero lograr: Necesito estar informado, que DataGrid
columna se ordena en qué dirección cuando un usuario ordenar una columna. No es necesario que esta información venga después de la clasificación, solo tiene que ser correcta;)
Eso es de hecho una tal solución dios. SortDirection cambia el momento en que hace clic en Ordenar. La clasificación real puede llevar mucho más tiempo, no tiene garantía de que su solución se active inmediatamente después de que Sort haya terminado. – Houman
¿Tienes otra idea? Para mí, esto está bien ya que uso la información para almacenarla en un archivo de configuración para el próximo inicio de la aplicación. El tiempo no importa mucho. A pesar de todo, mientras escribía, no estoy completamente satisfecho con esto, por lo que estaría feliz con las sugerencias. – MatthiasG