Comment trier le gridview quand je clique sur le texte d'en-tête sur gridview dans asp.net
J'ai développé un asp.net application qui a un contrôle Gridview. Je veux qu'il sorte quand je clique sur le Gridview texte d'en-tête dans asp.net. Entity framework est utilisé pour lier le contrôle gridview.
protected void grdmortgagesaver_Sorting(object sender, GridViewSortEventArgs e)
{
string sortExpression = e.SortExpression;
if (GridViewSortDirection == SortDirection.Ascending)
{
GridViewSortDirection = SortDirection.Descending;
SortGridView(sortExpression, DESCENDING);
}
else
{
GridViewSortDirection = SortDirection.Ascending;
SortGridView(sortExpression, ASCENDING);
}
}
private void SortGridView(string sortExpression, string direction)
{
// You can cache the DataTable for improving performance
var databind = from i in mortgageentites.Clients orderby i.LastName select i;
if (databind.Count() > 0)
{
grdmortgagesaver.DataSource = databind.ToList();
grdmortgagesaver.DataBind();
DataTable dt = clients;
if (dt != null)
{
//DataTable dt = ds.Tables[0];
DataView dv = new DataView(dt);
dv.Sort = sortExpression + direction;
grdmortgagesaver.DataSource = dv;
grdmortgagesaver.DataBind();
}
}
}
Vous devez vous connecter pour publier un commentaire.
Si vous utilisez un standard ASP.NET Système.Web.L'INTERFACE utilisateur.Contrôles webcontrols.GridView, vous pouvez simplement "Activer le Tri", dans le volet propriétés par le paramètre "AllowSorting" à true ou par l'intermédiaire de la "pop-out" en haut à droite de la commande en cochant la case "Activer le Tri"
ajouter AllowSorting="true" dans votre contrôle gridview et
dans votre code c#
En premier dans votre Page dans le contrôle GridView Déclaration de l'Étiquette de l'ajout de la propriété
AllowSorting="true"
et dans le Gridview_SortCommand essayez le code Suivant en tant que guidance