【问题标题】:Catch exception for null value in a DataTable捕获 DataTable 中空值的异常
【发布时间】:2011-05-05 22:57:20
【问题描述】:

我有一个 C# (winforms) 应用程序,它使用向导生成的代码进行数据库管理(数据集、数据表等)。例如,如果我将数据列配置为允许空值(属性 AllowDBNull = true),并且在输入空值时(在表单中)配置为抛出异常(属性 NullValue = ThrowException)。当在表单中编辑文本字段并将其留空时,它不会让用户将焦点切换到另一个控件,我认为这可能是因为 NullValue 属性引发异常)。问题是:我怎样才能捕获异常并设置一个合适的值。

【问题讨论】:

  • 放一份在问题中抛出的异常的副本。我敢肯定,一旦你这样做,它就会很明显。
  • 其实我不知道抛出什么样的异常,设计器有那个值,如果我在设计器中设置另一个值我会出错。唯一的症状是当我离开与字段关联的文本框时,我无法将注意力集中到另一个控件上。

标签: c# winforms exception-handling dataset datatable


【解决方案1】:

我不确定您是否可以使用它来捕获异常,但您可能可以为 FocusLost 或类似的事件绑定一个事件,以检查字段的值并为其提供适当的值,如后半部分所述您的最后一条语句.. 这也可能使捕获异常的需要过时了。

【讨论】:

  • 试过了,但没有运气,还尝试捕捉 ColumnChanging 事件,但也没有运气。有什么帮助吗?
  • 如果我能想到别的我会编辑我的答案,但不幸的是我不是一个 UI 重度程序员。
【解决方案2】:

如果您的控件已绑定到设计器中的 DataSet,请尝试将控件属性的“高级绑定”部分中的 Null Value 属性设置为所需的值。如果您以这种方式设置绑定,我想在代码中也有类似的方法可以做到这一点。

干杯! 乙肝

【讨论】:

    猜你喜欢
    • 2011-12-07
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 2021-04-04
    • 2014-11-24
    • 1970-01-01
    • 2022-06-11
    相关资源
    最近更新 更多