我在.NET 3.5中使用WPF工具包中的DataGrid。DataGridCheckboxColumn双向绑定
我有一个datagrid列绑定到我的源对象的布尔属性。
该复选框正确调用布尔的属性get accessor。
但是,当检查或取消选中框时,调用get而不是set。
<DataGrid AutoGenerateColumns="False" ItemsSource="{Binding Object, Source={StaticResource model}, Mode=TwoWay}">
<DataGrid.Columns>
<DataGridCheckBoxColumn Binding="{Binding BoolProperty, mode=TwoWay}"/>
</DataGrid.Columns>
</DataGrid>
当我改用DataGridTemplateColumn在里面有一个复选框的属性设置正确不过话,那就更复杂创建一个很好的布局。
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding BoolProperty, Mode=TwoWay}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
我在做什么错误使用DataGridCheckBoxColumn?
好感谢在这种情况下的行为是必要的,当用户检查我想在视觉上更新的东西的盒子作为屏幕。有没有办法使用DatGridCheckBoxColumn来做到这一点?还有什么是最好的方式,以便在初始点击用户不必点击两次选择行然后复选框,你可以选择与鼠标悬停事件的行? – DanBrum
@DanBrum:我不知道你是否可以绕过这个使用该列的方法,如果你找不到方法,你可以定义你自己的DataGridCheckBoxColumn。 MouseOver上的选择应该是可能的。 –