我在 a 中有一个数据绑定CheckBox
,DataGrid
使用 WPF 和 MVVM;
<DataGridTemplateColumn Width="80" Header="Enabled">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding Path=IsEnabled, UpdateSourceTrigger=PropertyChanged, Mode=TwoWay}" Name="theCheckbox" HorizontalAlignment="Center"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
这工作正常,并且在设置CheckBox
时正在检查IsEnabled
。 IsEnabled
是我绑定到的对象集合中的一个属性DataGrid
。我想要做的是能够验证是否应该允许在用户选择它时检查其中的特定行CheckBox
,DataGrid
如果不删除他们的检查并显示警告消息,例如“没有第 5 行就无法检查第 1 行和 9 个正在检查”。我发现了如何使用后面的代码使用Checked
和的Unchecked
属性来执行此操作CheckBox
,但是我正在使用 MVVM,因此想要处理ViewModel
与 ViewDataGrid
和相关联的事情CheckBox
。我该怎么做?我需要一种传递 Id 字段的方法DataRow
为了确定我正在处理哪一行,为了论证,我们可以说 Id 字段被调用BorderId
。