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)

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
Et donc ceci, appelé par une fonction, doit être réeffectué à chaque changement dans la base de donnée pour pouvoir actualiser l'affichage.

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 :
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)
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 !

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