【问题标题】:Why is invalid value being thrown?为什么会抛出无效值?
【发布时间】:2010-03-29 18:50:42
【问题描述】:

我有一个 DevExpress TextEdit,它是数据绑定到数据集的。

该字段是一个可选的百分比,(数据类型为双精度)。

当记录被加载并且字段中没有值时,一切都很好。

但是,如果您在该字段 (IE 100) 中键入内容,然后想将其删除,我会收到 Invalid Value, 错误。

为什么会发生这种情况,我该如何删除它?

我对此字段没有任何掩码或任何类型的显式验证。

【问题讨论】:

    标签: devexpress textedit


    【解决方案1】:

    我在 DevExpress 论坛上的 Brendon Muck 的帮助下解决了这个问题。

    我的一个 TextEdit 绑定到 Text 属性而不是 EditValue(都应该绑定到 EditValue)

    另外,根据布伦登

    从 TextEdit 控件中删除文本不会将该字段设置为 NULL。当检测到空字符串时,您必须处理 EditValueChanged 事件并手动将值设置为 null。

    所以,我已经创建了处理它的方法

    Private Sub SetTextEditToNull(ByVal sender As TextEdit)
    
        If String.IsNullOrEmpty(sender.EditValue.ToString.Trim()) And (Not sender.EditValue Is DBNull.Value) Then
    
            sender.EditValue = DBNull.Value
    
        End If
    
    End Sub
    

    在我的事件处理程序中我使用:

        SetTextEditToNull(CType(sender, TextEdit))
    

    【讨论】:

      猜你喜欢
      • 2019-12-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-04-29
      • 1970-01-01
      • 1970-01-01
      • 2011-03-17
      • 2019-06-08
      相关资源
      最近更新 更多