2010-01-03 4 views
0

Je n'ai aucune idée sur la façon de trier les données en utilisant datagridview dans VB.NET. Comment est-ce que je fais cela en utilisant Textbox pour entrer ma requête, j'utilise actuellement OLEDB. Voici une photo de ce que j'essaie de faire.Comment trier des données à l'aide de DataGridView dans VB.NET?

enter image description here

+0

Est-ce que cette question ont quoi que ce soit dans ce qui est spécifique à l'accès? Sinon, retirez l'étiquette. Je n'y vois rien qui se rapporte à Access/Jet/ACE. –

Répondre

0

devoirs?

Vous ne pouvez pas trier exactement les données en utilisant un DataGridView, mais vous pouvez définir l'ordre d'affichage des données dans un DataGridView.

Définissez la propriété SortedColumn de votre objet DataGridView au DataGridViewColumn par lequel vous voulez que vos données triées. Si vous avez besoin d'un ordre de tri plus complexe, vous pouvez appeler la méthode Sort avec un IComparer personnalisé. Reportez-vous à la documentation MSDN pour plus de détails.

Ou voulez-vous réellement filtrer vos données par les deux critères pour lesquels il y a une ligne d'entrée dans votre capture d'écran? Dans ce cas, je ne suis pas vraiment sûr de la meilleure solution. Probablement que vous devez parcourir tous les DataGridViewRow s et définir en fonction des critères saisis la visibilité de chaque ligne:

For Each row As DataGridViewRow in dgv.Rows 
    row.Visible = {some condition} 
Next 
+0

vous pouvez certainement trier dans un datagridview – Jason

0

Est-ce le genre doivent être dynamiques? Autrement dit, votre client doit-il pouvoir cliquer sur une ligne d'en-tête et la trier?

Si non, pourquoi ne pas ordonner que la requête revienne, puis lier cet objet à la grille?

Ce ne serait pas une bonne idée si le tri est dynamique car le coût d'aller et retour dans la base de données n'en vaut pas la peine.

1

essayer le code suivant:

this.dataGridView1.Sort (this.dataGridView1.Columns["Yourcolumnname"], ListSortDirection.Ascending); 
0
'declare this first: 
imports system.componentmodel 


'then put this code into a button or something 
DGV.Sort(DGV.Columns(0), ListSortDirection.Ascending) 

'DGv = datagridview 

goodluck

Questions connexes