Private Sub DataGridView1_CellContentClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewCellEventArgs) Handles DataGridView1.CellContentClick ' '********************************************************************************************** '* Sub Par défaut créer par clic sur l'objet DataGridView1 dans la Form * '* * '* Cette Sub, ne déclenche AUCUN événement sur un clic de souris sur les en têtes de colonnes * '* * '********************************************************************************************** ' Ce code permet d'obtenir les Index des cellules : Colonne 1 vaut 0 et Ligne 1 vaut 0 ensuite ça s'incrémente... Dim NumCol As Integer = -1 Dim NumRow As Integer = -1 NumCol = Me.DataGridView1.CurrentCell.ColumnIndex.ToString NumRow = Me.DataGridView1.CurrentCell.RowIndex.ToString ' 'MSGB MsgBox("NumCol " & NumCol, MsgBoxStyle.Information, "NumRow = " & NumRow) ' Ce code permet d'obtenir les Index et les Noms des colonnes ' Mais ne fonctionne pas quand on clic sur la colonne ' Because il n'est pas placé dans la bonne méthode... Dim NumHeader As Integer = -1 Dim NomHeader As String = "" NumHeader = Me.DataGridView1.Columns(Me.DataGridView1.CurrentCell.ColumnIndex).Index NomHeader = Me.DataGridView1.Columns(Me.DataGridView1.CurrentCell.ColumnIndex).HeaderText MSGB MsgBox("NumHeader " & NumHeader, MsgBoxStyle.Information, "NomHeader = " & NomHeader) End Sub J’ai essayé ceci: Private Sub DataGridView1_ColClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewColumnEventHandler) Handles DataGridView1.ColumnHeaderCellChanged ' End Sub 'Méthode non valable Ceci : Private Sub DataGridView1_ColClick(ByVal sender As System.Object, ByVal e As System.Windows.Forms.DataGridViewColumnEventHandler) Handles DataGridView1.ColumnHeaderMouseClick ' End Sub 'Idem !
Dim direction As ListSortDirection
Private Sub dataGridView1_ColumnHeaderMouseClick(ByVal sender As Object, ByVal e As DataGridViewCellMouseEventArgs) Handles DataGridView1.ColumnHeaderMouseClick ' ' NumHeader, NomHeader & MSGB sont déclarées à un niveau Public dans un module... NumHeader = e.ColumnIndex NomHeader = Me.DataGridView1.Columns(NumHeader).HeaderText MSGB MsgBox("NumHeader " & NumHeader, MsgBoxStyle.Information, "NomHeader = " & NomHeader) End Sub
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question