作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<DataGridTemplateColumn Header="IsAdmin">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<CheckBox Name="IsAdminCheckBox" IsChecked="{Binding Path=IsAdmin}" Click="IsAdmin_Click" CommandParameter="{Binding Path=Id}"/>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
这是我程序中数据网格的代码。在 CS 文件中,在单击事件中,我想看看当他们检查它时,它是更改为选中还是未选中,以便我可以在数据库中处理,将用户从 admin 更改为 not admin,反之亦然。但是,仅调用 IsAdminCheckBox 是行不通的,因为它找不到它,而且调用 datagridName.IsAdminCheckBox 也行不通。有谁知道如何访问复选框的状态?
最佳答案
您不能通过这种方式访问复选框,因为它们可能不止一个,名称仅在 DataTemplate
内部有效。
在事件处理程序中,sender
参数应该是CheckBox
,你只需要转换它然后你就可以访问IsChecked
属性(property)。另一种选择是处理 Checked
和 Uncheked
事件。
但我认为更好的方法是在绑定(bind)类中处理此问题,而不是在 GUI 的代码隐藏、关注点分离等方面。
关于c# - 从数据网格中获取复选框的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6311882/
我是一名优秀的程序员,十分优秀!