我有一个关于 WPF DataGrid 的问题。为了 IDataErrorInfo 验证,我想将整个选定的行设置为编辑 - 我的意思是将每个单元格(在该行中)的数据模板从 CellTemplate 设置为 CellEditingTemplate。
例如,这是一列:
<DataGridTemplateColumn Header="Note">
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Name="textBoxNote" Text="{Binding Note, ValidatesOnDataErrors=True}" />
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Note}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
这在 XAML 中是否可行(某种触发器)?我将如何在代码隐藏中做到这一点?我找到了具有两种不同样式作为资源的解决方案,然后在 Row_Selected 和 Row_Unselected 事件中以编程方式在它们之间切换,但我宁愿将现有的上述 XAML 代码用于列(具有单独的 CellTemplate 和 CellEditingTemplate)。
谁能指出我正确的方法?
提前致谢。最好的问候, DB