【发布时间】:2013-08-09 23:34:26
【问题描述】:
我的项目有一个用户可以编辑并保存到数据库的 DataGridView。我正在尝试向 DataGridView 添加验证。 (某些列是必需的,并且只能是数字(特别是双精度)。
我在处理 .Net 在幕后完成的一些自动解析时遇到了麻烦。 DataGridView 的行为会有所不同,具体取决于用户是将必填字段留空还是输入无法解析为双精度的内容(即文本)。
Easier Case :如果用户将必填字段留空并单击“保存”。保存按钮的单击事件触发,我可以检查单元格的 Value 属性是否设置为 DBNull,在这种情况下,我设置单元格的 ErrorText 属性并显示 MessageBox。
更难的情况:当用户输入的文本不能被解析为双精度时(例如,“asdf”)。发生这种情况时,一旦单元格失去焦点,就会在幕后发生一些内置的 .Net 验证,并且我会收到一个显示堆栈跟踪的消息框。我想完全禁用此验证,并在用户单击“保存”时进行自己的验证。
(在那之前,无效数据无关紧要)。有谁知道怎么做?
【问题讨论】:
标签: .net vb.net winforms datagridview