Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : Problème de Gridview et sorting [ WebForms / PostBack ] (mimosa803)

jeudi 8 mai 2008 à 21:42:45 | Problème de Gridview et sorting

mimosa803

Bonsoir,

j'ai un problème avec mon gridview, paging et sorting.

J'ai écrit un code, mais le problème il ne marche pas parfaitement c'est à dire :
quand je clique sur champ de trie pour la première fois le grid reste le même mais quand je clique une 2 ème fois le grid change selon le trie et puis il fonctionne correctement.
Mon souci est de corriger le fonctionnement au 1 er clique.

Voilà mon code :
Code :
 
//page load
if(!IsPostBack)
{


ChargerGrid();
 
}
 
private DataTable GetData()
{
 

#region Requête CAML sur la liste des projets
SPQuery objSPQuery = new SPQuery();
objSPQuery.ViewFields =
@"
<FieldRef Name='ID' />
<FieldRef Name='NomProjet' />
<FieldRef Name='ChefDeProjet' />
<FieldRef Name='DateDebut' />
<FieldRef Name='DateFinProjet' />"
;
 
objSPQuery.Query =
@" <OrderBy>
<FieldRef Name='DateDebut' Ascending='False' />
</OrderBy>"
;
 
objSPListItemCollection = objSPList.GetItems(objSPQuery);
#endregion
 
 
#region Affecter la valeur de la requête au grid
DataTable datatable = objSPListItemCollection.GetDataTable();
#endregion

 
return datatable;
}
 
publicvoid ChargerGrid()
{
try
{
 
 

GVProjet.DataSource = GetData();
GVProjet.DataBind();


}
 
catch(Exception E)
{
LblErreur.Text = E.Message;
}
 
}
privatestring GridViewSortDirection
{
 
get{return ViewState["SortDirection"]asstring ?? "ASC"; }
 
set{ ViewState["SortDirection"] = value; }
 
}
 
 
 
privatestring GridViewSortExpression
{
 
get{return ViewState["SortExpression"]asstring ?? string.Empty; }
 
set{ ViewState["SortExpression"] = value; }
 
}
 
 
 
privatestring GetSortDirection()
{
 
switch(GridViewSortDirection)
{
 
case"ASC":
 
GridViewSortDirection = "DESC";
 
break;
 
 
 
case"DESC":
 
GridViewSortDirection = "ASC";
 
break;
 
}
 
 
 
return GridViewSortDirection;
 
}
 
 
 
 
protected DataView SortDataTable(DataTable dataTable, bool isPageIndexChanging)
{
 
if(dataTable != null)
{
 
DataView dataView = new DataView(dataTable);
 
if(GridViewSortExpression != string.Empty)
{
 
if(isPageIndexChanging)
{
 
dataView.Sort = string.Format("{0} {1}", GridViewSortExpression, GridViewSortDirection);
 
}
 
else
{
 
dataView.Sort = string.Format("{0} {1}", GridViewSortExpression, GetSortDirection());
 
}
 
}
 
return dataView;
 
}
 
else
{
 
returnnew DataView();
 
}
 
}
 
 
 
protectedvoid GVProjet_Sorting(object sender, GridViewSortEventArgs e)
{
 
GridViewSortExpression = e.SortExpression;
 
int pageIndex = GVProjet.PageIndex;
 
//DataTable table = (DataTable)Session["datatable"];
 
GVProjet.DataSource = SortDataTable(GetData()as DataTable, false);
 
GVProjet.DataBind();
 
GVProjet.PageIndex = pageIndex;
 
}
 
 

Finalement, j'espère que vous m'aidez à résoudre mon problème.

Merci



Cette discussion est classé dans : problème, datatable, dataview, gvprojet, gridviewsortdirection


Répondre à ce message

Sujets en rapport avec ce message

Problème pour trier une dataview [ par apatride_95 ] Bonjour,  Voici mon code qui ne fonctionne pas  :     (la méthode Sort_Grid est déclenchée quand on clic sur un en-tête de colonne d'un datagrid) ASP.NET Problème Dataset / Dataview / rowfilter / sort [ par Focalizer ] Bonjour,J'ai un petit soucis avec un dataset/dataview.J'initialise un dataset avec un sqlcommand ensuite je prend le dataview de la table(0) puis je p Probleme de suppression et modification avec un DataView [ par cnguyen ] Bonjour,J'ai un petit problème avec mon dataview.Mon but est de pouvoir modifier ou supprimer un élément de ma table.Pour cela, j'ai pris ma table "pr Problème de timer [ par damiendu56 ] bonjour a tous, Je réalise une application sur laquelle je dois avoir une indication de la date et de l'heure. J'ai donc créé un label lblDate qui problème xml et xslt [ par c_ensias ] Bonjour à tous et à toutes,J'utilise un filtre xslt pour extraire des données d'un fichier source xml.Mon problème est le suivant : La sortie du filtr Problème reponse.write avec reponse.redirect [ par touss ] Bonjour.Voila, j'aimerai que:response.write ""redimImage "Upload/" & ors ("FILENAME"), 200, 300, 100, 100 response.write""Soit redirigé et écrite v problème de doublon en ASP [ par fabiano13 ] Bonjour, j'ai un problème de doublon en ASP !!!J'ai initialement un tableau avec des numéros : (131,132,131,149,164,131,164)Je souhaiterai supprimer l Datagrid [ par RegVB ] Bonjour à tous,Je tourne en rond sur un problème : j'ai un datagrid dans lequel j'ajoute une colonne type Checkbox afin que l'utilisateur sélectionne problème passage de variable [ par c_ensias ] Bonjour tout le monde,Mon problème est le suivant :Je veux interpréter une variable session dans le code html de la page aspx.Voici l'exemple :  > </i Problème d'affichage dans un UserControl [ par damiendu56 ] bonjour à tous, Je développe actuellement une application sous Visual C#.NET Sur toute cette application, je souhaite afficher la date et l'heure en


Nos sponsors

Sondage...

CalendriCode

Décembre 2008
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Téléchargements



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel BAÏSE, Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,281 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.