wpf - Enlace inmediato DataGridCheckBoxColumn



(2)

Debe establecer la propiedad UpdateSourceTrigger del enlace en PropertyChanged. El valor predeterminado es LostFocus.

Estoy usando el WPF Toolkit Datagrid y tengo una columna que es un DataGridCheckBoxColumn vinculado a una propiedad bool en mi ViewModel.

Mi problema es que no quiero que la propiedad obtenga su valor actualizado inmediatamente cuando el usuario marca o desmarca la casilla de verificación.

Ahora debe salir de la celda para actualizar la propiedad. Es una casilla de verificación. No puede estar en medio de la edición como un cuadro de texto puede ...

Cualquier ayuda sería apreciada.

/ J


Answer #1

La solución es NO usar DataGridCheckBoxColumn para esto. En su lugar use

<dg:DataGridTemplateColumn Width="20" Header="" SortMemberPath="IsSelected">
   <dg:DataGridTemplateColumn.CellTemplate>
      <DataTemplate>
         <CheckBox  IsChecked="{Binding Path=IsSelected}" />
       </DataTemplate>
   </dg:DataGridTemplateColumn.CellTemplate>
 </dg:DataGridTemplateColumn>

que de forma predeterminada tiene su UpdateSourcerigger a PropertyChanged ...

DataGridCheckBoxColumn tiene su UpdateSourceTrigger establecido en explícito y no se puede cambiar. Lea más aquí: http://blogs.msdn.com/vinsibal/archive/2009/04/07/5-random-gotchas-with-the-wpf-datagrid.aspx





checkbox