0

我有一个 DataGridView,其中一列包含用户需要通过添加空格来对齐的数据。例如,前两行可能包含:

kumbu
kuimbiu

并且用户需要能够通过添加空格来排列匹配的字母。像这样的东西:

ku mb u
kuimbiu

现在为了使用 DataGridView 执行此操作,用户必须在顶部单元格中进入编辑模式,添加空格,按 Enter,在底部单元格中重新进入编辑模式,然后添加空格。我们的用户希望能够在顶部单元格的编辑模式下,点击向下箭头并前进到第二个单元格,同时保持编辑模式,节省点击或 F2 点击。

有没有好的方法来做到这一点?我尝试捕获向下箭头键,离开编辑模式,推进一个单元格,然后使用网格的 BeginEdit 方法进入编辑模式,但这并没有达到我想要的效果。

有任何想法吗?

4

1 回答 1

1

离开单元格时,在类变量中捕获编辑状态。当用户按下或输入时,下一个单元格将开始编辑模式,但前提是前一个单元格处于编辑模式。如果您希望它基于列,您可以添加其他逻辑。

Private blnEditMode As Boolean = False
Private Sub dgv_CellEnter(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv.CellEnter
    If blnEditMode Then
        dgv.BeginEdit(False)
    End If
End Sub

Private Sub dgv_CellLeave(ByVal sender As Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles dgv.CellLeave
    blnEditMode = dgv.IsCurrentCellInEditMode
End Sub
于 2010-08-06T12:59:55.610 回答