Tri sur Datagrid et sélection de lignes [Résolu]

Signaler
Messages postés
15
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
27 octobre 2005
-
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
-
Bonjour à tous,
je vous explique mon problème. Je trie mon datagrid grâce à l'événement Sort comme suit:


public
void SortCommand_OnClick(
object Source ,DataGridSortCommandEventArgs e)
{

try
{

//récupération de l'objet User en session
UserClass userInfo = (UserClass)Session["userObject"];

//inversion de l'ordre de tri
bool blnTri = !userInfo.getBlnTri();


DataGrid dgd = (DataGrid) Source;
DataView dv = (DataView) Session["source_" + dgd.ID];



if(blnTri) dv.Sort = e.SortExpression;

else dv.Sort = e.SortExpression + " DESC";

etc....

Ensuite, je recolle mon dataview à mon datagrid et celui-ci s'affiche trié sans problème! Mais ensuite, lorsque j'appuie sur un des boutons de la colonne "edit" de mon datagrid, il me sélectionne la ligne comme si mon datagrid n'était pas trié. Il ne tient pas compte du tri précédent. Pourtant je recharge le dataview du datagrid trié, mais rien à faire. il garde en mémoire l'ancien datagrid et ne me le met pas à jour alors que pour l'affichage, mon datagrid est trié. J'espère avoir été assez clair. Merci d'avance à tous.

5 réponses

Messages postés
9
Date d'inscription
samedi 18 novembre 2000
Statut
Membre
Dernière intervention
21 mai 2008

c'est sans doute trop tard,

mais en effet, j'avais le même problème, c'est parce qu'après avoir passé par le X_SortCommand, tu passes par le X_EditCommand où tu rafraichis (sans doute) ton datagrid et donc tu perds ton tri
Messages postés
433
Date d'inscription
samedi 26 avril 2003
Statut
Membre
Dernière intervention
4 décembre 2009
1
Passe en mode debug et regarde ce qui se passe dans l'evenemtn postback du page_load.

Je suis sur que dans cette pas tu retrie ton datagrid a chaque fois.
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
1
Bonjour,

voila j'ai un souci et je pense que vous pourrez m'aider ...
je n'ai pas l'évenement "DataGridSortCommandEventArgs" c'est normal ?
pourtant j'ai mis datagrid.allowSort à true ...

merci
--Capoueidiablo--
Messages postés
15
Date d'inscription
vendredi 30 avril 2004
Statut
Membre
Dernière intervention
27 octobre 2005

As-tu défini le Sortcommand de ton Datagrid comme suit ?


dgd.SortCommand +=
new DataGridSortCommandEventHandler(
this.SortCommand_OnClick);

tu pourras alors définir la méthode relative à l'évènement Sort en utilisant DataGridSortCommandEventArgs.
Messages postés
316
Date d'inscription
jeudi 9 janvier 2003
Statut
Membre
Dernière intervention
1 février 2010
1
Merci pour la réponse :o)

je pense que finalement le problème est un peu plus complexe ...

j'ai créé un nouveau sujet :
http://csharpfr.com/forum.v2.aspx?ID=636154

merci.
--Capoueidiablo--