如何验证在devexpress中从gridview弹出的数据

时间:2016-04-21 17:36:41

标签: gridview devexpress devexpress-windows-ui

我在DevExpress中有一个gridview设置,所以当我想在网格中添加一个项目时,我会弹出一个编辑表单。我想验证我在弹出窗体中输入的数据。

我使用ValidatingEditor方法,因为我想确定一下 作为数字字段的列,只接受数字和 接受字符串字段的列,只接受字符串。

我试图通过执行此操作来访问已编辑的值:

gvTaxes.ActiveEditor.EditValue.ToString()

所以这就是

Private Sub gvTaxes_ValidatingEditor(sender As Object, e As BaseContainerValidateEditorEventArgs) Handles gvTaxes.ValidatingEditor

    Dim strCurrentValue As String

    If Not IsDBNull(gvTaxes.ActiveEditor.EditValue.ToString()) Then

        strCurrentValue = gvTaxes.ActiveEditor.EditValue.ToString()

    End If

我从'我得到一个NullReferenceException异常。线。有任何想法吗。

2 个答案:

答案 0 :(得分:0)

使用e.Value.ToString()代替gvTaxes.ActiveEditor.EditValue.ToString()

If Not IsDBNull(e.Value.ToString()) Then

    strCurrentValue = e.Value.ToString()

End If

答案 1 :(得分:0)

在gvTaxes_ValidatingEditor中尝试此代码:

Dim view As GridView = TryCast(sender, GridView)
    Dim d As Double
    Dim strCurrentValue As String
    If view.FocusedColumn.FieldName = "YourColumnName" Then

        If Not Double.TryParse(Convert.ToDouble(e.Value).ToString(), d) Then
            e.Valid = False
            e.ErrorText = "the input value is invalid !"
        Else

            strCurrentValue = e.Value.ToString()
        End If
    End If