Datagridview(VB 2010)列的只读属性,"奇怪"行为

时间:2015-07-25 07:03:01

标签: vb.net datagridview

我在VB2010的datagridview上遇到了以下代码的奇怪行为。 dgv是datagridview的名称。在FormLoad,我写了

Private Sub frmdataLog_Load(sender As Object, e As System.EventArgs) Handles Me.Load
    dgv.ColumnCount = 5
    dgv.Columns(0).Width = 27
    Dim j As Integer
    For j = 1 To 4
        dgv.Columns(j).Width = 85
    Next

    dgv.Rows.Add(1)
    dgv.Columns(0).HeaderText = "Sl No."
    dgv.Columns(1).HeaderText = "Test Reading Nm"
    dgv.Columns(2).HeaderText = "Standard Reading Nm"
    dgv.Columns(3).HeaderText = "Error in Nm"
    dgv.Columns(4).HeaderText = "% Uncertainty"
    For j = 0 To 5
        dgv.Columns(j).ReadOnly = True
        dgv.Columns(j).SortMode = DataGridViewColumnSortMode.NotSortable
    Next
    dgv.Columns(1).ReadOnly = False

End Sub

我希望column(1)可以编辑,而其他所有列都是不可编辑的。

但我发现即使column(1)也是只读!

但是当我添加以下代码时,问题就解决了:

Private Sub dgv_CellEnter(sender As Object, e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv.CellEnter
    colVal = e.ColumnIndex
    rowVal = e.RowIndex
    If dgv.Columns(1).ReadOnly = True Then
        dgv.Columns(1).ReadOnly = False
    End If
End Sub

我的问题是为什么第dgv.Columns(1).ReadOnly = False行未在Form加载下执行?

0 个答案:

没有答案