gpt4 book ai didi

vb.net - Datagridview 列单击/排序

转载 作者:行者123 更新时间:2023-12-04 04:50:16 25 4
gpt4 key购买 nike

嗨,你们都知道,如果有人点击列标题,它就会排序。但是,在它们排序后是否可以做一些事情。就像如果它升序排序一个 msgbox 会提示说你排序升序。我想知道它是哪个 datagridevent。如果可能,有关如何判断列是否已排序的任何提示?我找到了这个链接,但它实际上是 Web Form 我需要在 Windows 窗体中做任何想法?

Datagridview column sorting when clicking on the column header

最佳答案

  Private Sub dataGridView1_ColumnHeaderMouseClick(ByVal sender As Object, _
ByVal e As DataGridViewCellMouseEventArgs) _
Handles dataGridView1.ColumnHeaderMouseClick

Dim newColumn As DataGridViewColumn = _
dataGridView1.Columns(e.ColumnIndex)
Dim oldColumn As DataGridViewColumn = dataGridView1.SortedColumn
Dim direction As ListSortDirection

' If oldColumn is null, then the DataGridView is not currently sorted.
If oldColumn IsNot Nothing Then

' Sort the same column again, reversing the SortOrder.
If oldColumn Is newColumn AndAlso dataGridView1.SortOrder = _
SortOrder.Ascending Then
direction = ListSortDirection.Descending
' Msgbox HERE
Else

' Sort a new column and remove the old SortGlyph.
direction = ListSortDirection.Ascending
oldColumn.HeaderCell.SortGlyphDirection = SortOrder.None
' Msgbox HERE
End If
Else
direction = ListSortDirection.Ascending
' Msgbox HERE
End If

' Sort the selected column.
dataGridView1.Sort(newColumn, direction)
If direction = ListSortDirection.Ascending Then
newColumn.HeaderCell.SortGlyphDirection = SortOrder.Ascending
Else
newColumn.HeaderCell.SortGlyphDirection = SortOrder.Descending
End If

End Sub

Private Sub dataGridView1_DataBindingComplete(ByVal sender As Object, _
ByVal e As DataGridViewBindingCompleteEventArgs) _
Handles dataGridView1.DataBindingComplete

' Put each of the columns into programmatic sort mode.
For Each column As DataGridViewColumn In dataGridView1.Columns
column.SortMode = DataGridViewColumnSortMode.Programmatic
Next
End Sub

来源: MSDN

关于vb.net - Datagridview 列单击/排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17538247/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com