我创建一个WPF DataGrid
控制与DataGridTemplateColumn
复选框应该具备哪些器isChecked属性设置为取决于DataTable
值真或假)...WPF DataGridTemplateColumn - 触发的复选框物业器isChecked
如果DataTable
行的值设置为,DataGridTemplateColumn
应该是true(选中)。否则,这将是假(未选中)...默认情况下,每一个新的行会被设置为真,但我不能这些CheckBox
行绑定到我的DataTable
值(这将是或)
我试过以下c#代码。当我完成UserControl版本并通过我的DataTable
循环以保存其值...但是,当我设置gridResultados.ItemsSource = dataTable.DefaultView显然不检查/取消选中我的CheckBoxes
,因为DataTable
列之间没有绑定值(1或2)和我DataGridTemplateColumn
...这是我最亲密的做法:
<DataGrid>
<DataGrid.Columns>
<DataGridTemplateColumn Header="Value?" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox IsChecked="True" Checked="CheckBox_Checked" Unchecked="CheckBox_Unchecked">
<Style TargetType="{x:Type CheckBox}">
<Style.Triggers>
<Trigger Property="Content" Value="1">
<Setter Property="IsChecked" Value="True"/>
</Trigger>
<Trigger Property="Content" Value="2">
<Setter Property="IsChecked" Value="False"/>
</Trigger>
</Style.Triggers>
</Style>
</CheckBox>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
private void CheckBox_Checked(object sender, RoutedEventArgs e)
{
dataTable.Rows[gridResultados.SelectedIndex].SetField(4, 1);
}
private void CheckBox_Unchecked(object sender, RoutedEventArgs e)
{
dataTable.Rows[gridResultados.SelectedIndex].SetField(4, 2);
}
你好金刚, 它工作正如我想。我会做一些研究,以提高我的知识和我的WPF项目......谢谢! –