【问题标题】:How to discard row if gridview's row validation fails (devexpress)如果 gridview 的行验证失败,如何丢弃行 (devexpress)
【发布时间】:2012-01-11 18:59:44
【问题描述】:

在 XtraGridView 中,从 RowValidation 的工作方式来看,用户似乎别无选择,只能先更正值(导致验证成功),然后按 Discard 按钮(我单独提供,它会 RejectChanges)。我想要一个选项,即使行包含无效数据,用户也可以丢弃该行而不会弹出任何警报。

在我的情况下,当用户按下放弃时,它会导致行验证被触发(由于焦点更改)。如果行验证不成功,则丢弃按钮事件处理程序被抑制。这样我就永远无法简单地丢弃无效行。

这是任何有网格的人都需要的常见功能。期待标准解决方案或解决方法。

【问题讨论】:

  • 简单地禁用和启用丢弃操作周围的行验证?
  • 我猜不出来。因为在检测到丢弃按钮单击之前会触发行验证。 :(

标签: c# winforms devexpress


【解决方案1】:

正如你所说,你让我很好奇,一些基本的东西应该在某个地方。

有点gooling发现你做的是捕获InvalidRowException,它有一个var参数,你可以将它设置为忽略。

这是我找到它的地方。

DevExpress

【讨论】:

  • 没有没有。没有帮助。我想你没有得到我的问题。问题是,如果行验证不成功(即当数据无效时),为什么会抑制其他事件(如按钮按下等)。这样我总是被卡住,除非我更正数据以暂时使其有效,然后只有我可以丢弃它。
【解决方案2】:

如果放弃按钮获得焦点,你不能检查焦点按钮和回避验证吗?

一般的 DevExpress 设置会强制用户在验证时插入有效值,按 Esc 键是将字段重置为原始值的简单解决方案。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-30
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多