.Net 4 WPF DataGrid C# MMVMDataGrid SelectionUnit = ¿La celda deshabilita todo el soporte para una fila seleccionada?
Cuando la cuadrícula de datos es SelectionUnit fila completa, WPF enlace de datos y la vistacoleccion cuidar de que me deja saber en el modelo de vista lo que es el elemento seleccionado de forma activa a través de la propiedad CurrentItem de la vista. Esto funciona muy bien para las redes de solo lectura con el modo de selección configurado en su totalidad.
Ahora tengo una grilla editable. Así que configuré SelectionUnit = Cell para que sea más fácil detectar en qué celda se encuentra. Ahora, de repente, la grilla ya no tiene la capacidad de rastrear el elemento de selección. Ni siquiera puedo configurar SelectedItem cuando está configurado en modo celular. Entonces, el modelo de vista siempre piensa que está en la primera fila. Puedo manejar SelectedCellsChanged en la grilla para descubrir en qué fila estoy, simplemente no tengo forma de dejar que el modelo de vista lo sepa ya que el elemento SelectedItem de la cuadrícula ya no se puede configurar.
No entiendo por qué la cuadrícula no puede tener un SelectedItem en el modo de selección de celda.
Si no introduzco la codificación en mi cuadrícula para convertir ItemSource en mi colección para llamar a MoveCurrentTo desde el evento SelectedCellsChanged, ¿hay alguna otra MVVM verdadera para mantener el elemento CurrentItem de la vista sincronizado con la cuadrícula?
O eso, o cambio el estilo de cuadrícula para eliminar o reducir el efecto de resaltado de fila cuando tengo una grilla editable.
si tiene que "codificar", cree una interfaz –
Sí, eso es lo que he hecho por ahora. – happyfirst
Acabo de mirar la fuente 'DataGrid' y en el modo' Cell', no se sincronizan con 'SelectedItem' –