0
我使用文本框和DGV生成自动暗示搜索。一切工作正常,除此之外,我想要2个按钮,提供功能去1行上下。你必须知道,在我搜索时,我将那些不包含搜索字符串的行设置为.visible = false
。DataGridView选择行错误
从理论上讲它应该像这样工作:
Private Sub tsbDown_Click(sender As Object, e As EventArgs) Handles tsbDown.Click
With dgvMA
If dgvMA.RowCount > 0 Then
Dim MyDesiredIndex As Integer = GetNextVisibleCell(dgvMA.CurrentRow.Index)
dgvMA.ClearSelection()
dgvMA.CurrentCell = dgvMA.Rows(MyDesiredIndex).Cells(1)
dgvMA.Rows(MyDesiredIndex).Selected = True
End If
End With
End Sub
Private Function GetNextVisibleCell(currentrow As Integer) As Integer
With dgvMA
For i = currentrow To .Rows.Count - 1
If .Rows(i).Visible = True Then
MsgBox(i & ": " & .Rows(i).Visible)
Return i
Exit For
End If
Next
Return currentrow
End With
End Function
但永远都不要我行被选中。 multi-select
设置为false
和fullrowselect
至true
。当我手动点击一行或用键盘选中时,一切都打印正确。
我在做什么错?