我想在DataGrid
中添加自定义列:
<DataGridTemplateColumn Header="Click">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsChecked}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
但是,单击
CheckBox
(选中/取消选中)不会触发属性 setter bool _isChecked;
public bool IsChecked
{
get { return _isChecked; }
set
{
_isChecked = value; // setting breakpoint here
OnPropertyChanged();
}
}
setter 有时会被调用,但是我无法理解确切的时间:何时切换行?当我双击另一个单元格时?要不然是啥?
如果我使用
ListView
,则绑定(bind)会立即触发 。我的问题:怎么回事?如何在我勾选/取消选中
CheckBox
时立即让setter调用? 最佳答案
<CheckBox IsChecked="{Binding IsChecked,UpdateSourceTrigger=PropertyChanged}" />
应该解决您的问题。
关于c# - DataGridTemplateColumn绑定(bind),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39389564/