我使用DataGridTemplateColumn
在标题中显示CheckBox。复选框用于显示alle cell是checked
还是(un-)检查所有单元格。
XAML:
<DataGridTemplateColumn>
<DataGridTemplateColumn.Header>
<CheckBox IsChecked="{Binding Path=DataContext.AreAllVehiclesChecked, RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl, AncestorLevel=1}}" Command="{Binding Path=DataContext.ChangeAllItemsSelectedCommand, RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl,AncestorLevel=1}}" IsThreeState="False" />
</DataGridTemplateColumn.Header>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected, Mode=TwoWay}" Command="{Binding Path=DataContext.ChangeItemSelectionCommand, RelativeSource={RelativeSource FindAncestor, AncestorType=UserControl,AncestorLevel=1}}" CommandParameter="{Binding }"></CheckBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
错误讯息:
System.Windows.Data错误:40:BindingExpression路径错误:在'object'''CheckBox'(Name ='')'上找不到'IsSearchSelected'属性。 BindingExpression:路径= IsSearchSelected; DataItem ='CheckBox'(Name =''); target元素是'CheckBox'(Name =''); target属性为'IsChecked'(类型'Nullable`1')
System.Windows.Data错误:40:BindingExpression路径错误:'object'''CheckBox'(Name ='')'上找不到'CreateProjectFromSelectedVehiclesDemandedCommand'属性。 BindingExpression:路径= CreateProjectFromSelectedVehiclesDemandedCommand; DataItem ='CheckBox'(Name =''); target元素是'CheckBox'(Name =''); target属性是'Command'(类型'ICommand')
对于所有单个单元格而言,带有CheckBox的DataTemplate是什么让我感觉很糟糕。属性和命令已正确绑定。什么不起作用是标题中的复选框。我有(完全相同的结构)在另一个项目中正确运行。
任何想法我做错了什么?
更新:我今天早上再次尝试了(因为使用了窥探等)并且突然 - 没有更改代码 - 它再次起作用。什么是最好的StackOverflow练习 - &gt;删除问题?
再次感谢所有帮助我的人!