【问题标题】:Datagridview checkboxes lose checksDatagridview 复选框丢失检查
【发布时间】:2017-10-12 23:36:11
【问题描述】:

在我的 Winforms 应用程序中,我有一个表单,其中包含一个带有复选框列的 datagridview。如果我选中一个或多个复选框项目,然后更改表单上的其他一些控件(在 datagridview 之外),复选框将变为未选中状态。任何帮助,将不胜感激。谢谢。

更多详细信息:选中项的底层绑定工作正常,因为值正在被存储,并且在表单重新加载时选中的状态是正确的。这只是一个视觉问题。

此外,复选框值永远不会在代码中以编程方式设置为 false。错误值仅来自绑定或手动取消选中。

【问题讨论】:

  • 没有代码无法回答这个问题。不知道你在做什么。
  • This is just a visual issue. 可能不会。
  • 无论谁对这个问题投了反对票,请认识到我在经过大量研究工作后回答了我自己的问题,包括在许多网页上以及通过审查和重新设计我自己的代码。如果您发现这个问题没有用,那只是您的意见。如果您发现不清楚,请查看我的编辑和回答,然后,如果您仍然持有该意见,请要求适当/进一步澄清。不要只是投反对票。

标签: winforms checkbox datagridview


【解决方案1】:

重新设计了绑定,现在可以正常工作了。以前维护业务对象中的选择列表并根据选择检查复选框。现在维护业务对象中的“选定”属性并适当地绑定。

由于复选框编辑(显然)生成的事件的性质,问题表现出如所述。单击复选框时未触发绑定源更改事件(因为未绑定)-仅在另一个控件上编辑完成后发生。

【讨论】:

    【解决方案2】:

    您能否在列上执行“Invalidate()”以查看重绘是否会改变任何内容?没有代码,我们需要任意划分问题。

    【讨论】:

    • 答案中通常没有问号。这应该是一条评论。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 1970-01-01
    • 2013-12-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多