Bonjour,
Je viens de mettre en test le module de mon application, et un utilisateur m'a fait remarqué que cela serait agréable que la grille reste triée dans le sens voulu même après modification de son contenu.
"Pas bête !" ... "Mais pas facile "
Mon problème principal est que mon dataGridView est généré entièrement via le code (code que voici)
Et donc ceci, appelé par une fonction, doit être réeffectué à chaque changement dans la base de donnée pour pouvoir actualiser l'affichage.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Dim oConnection As New OleDbConnection(My.Settings.ChaineCnx) Dim strRequete As String = "" 'Je vous épargne la requête qui s'étale sur une vingtaine de ligne :p Dim oCmdSQL As New OleDbCommand(strRequete, oConnection) Dim oDataAdapter As New OleDbDataAdapter(oCmdSQL) Dim oDataSet As New DataSet oDataAdapter.Fill(oDataSet, "Liste_Individuelle_Classement_Produit") Me.DGV_LISTEIND.DataSource = oDataSet.Tables("Liste_Individuelle_Classement_Produit") 'Quelques modifications de tailles de colonnes 'Selection de la 1ere ligne par defaut
Le problème qui se pose donc est : Comment conserver le Tri qui était choisis avant qu'on recharge le DataGridView ?
J'avais eu une lueur d'espoir en découvrant ces propriétés et en faisant :
Malheuresement, la colonne présente avant et après n'est pas la même, vu qu'entre temps il y à eu une suppression d'enregistrement. J'ai également tenté de modifié les propriétés pour m'appercevoir qu'elles sont ReadOnly !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 'Récupération du Tri actuel du DataGridView Dim oColumn As DataGridViewColumn = Me.DGV_LISTESPRODUITS.SortedColumn Dim oSort As SortOrder = Me.DGV_LISTESPRODUITS.SortOrder 'Chargement du DataGridView If ChargerDataGridViewListesProduits() = 0 Then MsgBox("Erreur lors du chargement de la fenêtre.", 16, "Erreur") Exit Sub End If 'Réaffectation des tri présent avant le rechargement du DataGridView Me.DGV_LISTESPRODUITS.Sort(oColumn, oSort)
Quelqu'un aurait-il une idée?
Peut-être un élément tel le "FindStringExact" des ComboBox existe pour les DataGridView? Mais au niveau des header.
Merci d'avance pour vos éventuelles pistes
Partager