Disabilitare il riordino Ascendente / Discendente sul DataGridView

Cliccando sulla header del DataGridView si ottiene il riordino dei dati.
Per impedire che venga fatto uno dei metodi è intercettare il click e interrompere l'azione di riordino.
Per farlo ho aggiunto un evento MouseMove sul DataGridView

C#

private void dataGridView1_MouseDown(object sender, MouseEventArgs e) { DataGridView.HitTestInfo ht = dataGridView1.HitTest(e.X, e.Y); if ((ht.Type == DataGridViewHitTestType.ColumnHeader) && (ht.ColumnIndex == 0)) MessageBox.Show("Ordinamento vietato"); }

VB.NET

Private Sub dataGridView1_MouseDown(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles dataGridView1.MouseDown Dim ht As DataGridView.HitTestInfo = dataGridView1.HitTest(e.X, e.Y) If ((ht.Type = DataGridViewHitTestType.ColumnHeader) AndAlso (ht.ColumnIndex = 0)) Then MessageBox.Show("Ordinamento vietato") End If End Sub

Spiegazione:
HittestInfo è un oggetto che espone la proprietà "Type" relativa alla enumerazione DataGridViewHittestType che elenca alcuni degli oggetti costituenti la DataGridView.
Utilizziamo HittestInfo generato dalle coordinate del punto cliccato per determinare se si è cliccata una header.
HittestInfo espone anche la proprietà ColumnIndex che espone il numero della colonna cliccata.

Print | posted on domenica 20 maggio 2007 23:46

Feedback

# re: Disabilitare il riordino Ascendente / Discendente sul DataGridView

Left by Donald at 12/10/2007 13:25
Gravatar Se togli il Message box non funziona!

Così invece si:

foreach (DataGridViewColumn var in this.dataGridView1.Columns)
{

var.SortMode = DataGridViewColumnSortMode.NotSortable;

}

# re: Disabilitare il riordino Ascendente / Discendente sul DataGridView

Left by Luciano Bastianello at 12/10/2007 13:38
Gravatar Ciao, ti ringrazio della segnalazione.
A mio avviso però si tratta di due cose diverse, la mia intercetta il click sulla colonna e segnala all'operatore (è ovvio che se togli il messaggio casca tutto!), la tua invece disabilita all'origine il sort.

# Ordinamento Multiplo DataGridView - Pagina 2 - MasterDrive.it - Information Technology Developers Community

Left by Pingback/TrackBack at 05/02/2008 13:38
Gravatar Ordinamento Multiplo DataGridView - Pagina 2 - MasterDrive.it - Information Technology Developers Community

Your comment:





 
Please add 8 and 5 and type the answer here:

Copyright © Luciano Bastianello

Design by Bartosz Brzezinski

Design by Phil Haack Based On A Design By Bartosz Brzezinski