【发布时间】:2013-09-09 23:22:48
【问题描述】:
我正在为用户删除多个数据库寄存器创建一个窗口,使用DataGrid 显示数据和Button 执行删除
所以我在DataGrid 中添加了DataGridTemplateColumn,在此DataGridTemplateColumn 中添加了CheckBox
<DataGrid Name="WordList" Margin="10" Width="230" AutoGenerateColumns="False"
SelectionMode="Single" SelectionChanged="WordList_SelectionChanged"
CanUserAddRows="False">
<DataGrid.Columns>
<DataGridTemplateColumn>
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox Name="WordChecked" HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn Binding="{Binding Path=Word}" Header="Word" Width="1*"
IsReadOnly="True"/>
</DataGrid.Columns>
</DataGrid>
请问,如何使用 C# 访问此 CheckBox 以检查它是否被选中?
【问题讨论】:
-
在Model中添加bool属性,在CheckBox中添加bint,就可以查询你的收藏了
-
是否有办法在所有行中访问此单元格?
-
@sa_ddam213 我认为这样的事情不属于模型,因为它与域无关。我认为更好的方法是在复选框上放置一个事件,将当前选定的数据网格项目添加到驻留在 ViewModel 中的列表中,然后从该列表中删除按钮。
-
非常感谢@Jim!我会试试这个解决方案!
-
当您单击要删除的行的复选框时,应该设置
Datagrid.SelectedItem