【发布时间】:2014-04-17 10:40:17
【问题描述】:
您好,我想通过单击列标题选择列,并通过单击单元格选择行。
这段代码不能完成这项工作。
Private Sub datagridview2_ColumnHeaderMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview2.ColumnHeaderMouseClick
datagridview2.Columns(e.ColumnIndex).Selected = True
End Sub
我在代码中制作的这些 gridview 选项
For Each c As DataGridViewColumn In datagridview2.Columns
c.SortMode = DataGridViewColumnSortMode.NotSortable
c.Selected = False
Next
datagridview2.SelectionMode = DataGridViewSelectionMode.FullRowSelect
希望有人能帮忙。干杯 b101
编辑:很好的列和行选择工作 fia 标题单击。现在需要通过单击单元格来选择一个单元格。 以下代码有效,但只需单击 2 次。第一次单击取消选择行或列,第二次单击选择单个单元格
Private Sub datagridview2_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview2.CellMouseClick
datagridview2.SelectionMode = DataGridViewSelectionMode.CellSelect
End Sub
如果我尝试通过 e.columnindex e.rowindex 在单元格点击事件中选择卖出 它抛出一个超出范围的异常。这些索引完全是愚蠢的,比如 -1 或一些不存在的类似索引。
编辑 2: 此代码不起作用
Private Sub datagridview2_CellMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview2.CellMouseClick
datagridview2.SelectionMode = DataGridViewSelectionMode.CellSelect
datagridview2.Rows(e.RowIndex).Cells(e.ColumnIndex).Selected = True
End Sub
Private Sub datagridview2_ColumnHeaderMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview2.ColumnHeaderMouseClick
datagridview2.SelectionMode = DataGridViewSelectionMode.ColumnHeaderSelect
datagridview2.Columns(e.ColumnIndex).Selected = True
End Sub
Private Sub datagridview2_RowHeaderMouseClick(sender As Object, e As DataGridViewCellMouseEventArgs) Handles datagridview2.RowHeaderMouseClick
datagridview2.SelectionMode = DataGridViewSelectionMode.FullRowSelect
datagridview2.Rows(e.RowIndex).Selected = True
End Sub
当点击标题时,它会跳转到 cellmouseclick 事件中
【问题讨论】:
-
对不起,satson 和部门一起在桌上足球:))它有一个例外,我无法通过鼠标单击来选择单个表格单元格。
-
在行标题上单击我要全行选择,在列标题单击上我要全列选择,在单元格单击上,我要单元格选择。
-
您好 Satson 感谢您的努力。它有一个例外,我只能在列选择后切换到单元格选择。当 rowselection 为真时,我无法切换到单元格选择,首先我需要切换到列选择!
-
如果你按列标题然后列选择工作,行标题选择行选择工作,如果你选择一个单元格选择单元格。现在你想要什么样的改变?
-
抱歉,我忘记更新这个帖子了。这只是 cellklickmethod() 中的一个错字,我写的是 gridiew1 而不是 gridview2。一切正常。谢谢