将DataGridViewCheckBoxCell转换为DataGridViewTextBoxCell时,'system.formatexception格式化的值具有错误的类型'

时间:2014-01-08 10:50:19

标签: c# .net vb.net datagridview

好的,我正在使用此代码将一些复选框单元转换为DataGridView中的文本框..

 If row.Cells("LoanNo").Value.ToString().Trim().StartsWith("-") Or row.Cells("LoanNo").Value.ToString().Trim().StartsWith("L") Then
                DataGridView1.Rows(row.Index).Cells("ColCheck").Value = Nothing

                DataGridView1.Rows(row.Index).Cells("ColCheck") = New DataGridViewTextBoxCell() '''for checkbox visibility
                DataGridView1.Rows(row.Index).Cells("ColCheck").ReadOnly = True
            Else
            End If

我在运行时获得system.formatexception formatted value of the cell has a wrong type 我使用

覆盖了这个错误
Private Sub DataGridView1_DataError(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewDataErrorEventArgs) Handles DataGridView1.DataError
    If (TypeOf (e.Exception) Is ConstraintException) Then
        Dim view As DataGridView = CType(sender, DataGridView)
        view.Rows(e.RowIndex).ErrorText = "an error"
        view.Rows(e.RowIndex).Cells(e.ColumnIndex) _
            .ErrorText = "an error"

        e.ThrowException = False
    End If
End Sub

我不确定是否应该覆盖这样的错误...因为如果,DataGridView还有其他类型的错误,我想看看。 另外我不确定这会影响DataGridView的性能。

0 个答案:

没有答案