2009-06-23 9 views
0

J'ai besoin de votre aide pour donner la propriété css dans gridview dans l'en-tête des colonnes 'Css. Up ou Down image?GridView Icône de direction de tri vers le haut ou vers le bas?

string AscCSS = "sortascheader"; 
     string DescCSS = "sortdescheader"; 

     foreach (DataControlField field in gvProducts.Columns) 
     { 
      for (int i = 0; i < gvProducts.Columns.Count; i++) 
      { 
       if (field.SortExpression == gvProducts.Columns[i].SortExpression) 
       { 
        if (gvProducts.SortDirection == SortDirection.Ascending) 
         field.HeaderStyle.CssClass = DescCSS; 
        else 
         field.HeaderStyle.CssClass = AscCSS; 
       } 
      } 
     } 

i ont cette propriété dans gridview généré ("GridView Row DataBound EVENT"). Le tri est correct mais Css ne fonctionne pas. Tel que. Jusqu'à ne pas convertir en icône vers le bas ?????

Répondre

0

Ajouter:

field.HeaderStyle.CssClass.Remove(); 

au-dessus du cas. Espérons que cela aide

Et aussi, pourquoi avez-vous 2 boucles? Est-il nécessaire de l'intérieur pour la déclaration

ou

Grâce à l'approche non-CSS:

myArrow.ImageUrl = "~/img_" + (GridView1.SortDirection == SortDirection.Ascending ? "asc" : "desc") + ".png"; 

ou utiliser CssClass sur LinkButton (similaire à la façon dont u utiliser sur HeaderStyle)

Dans le cas contraire , postez votre css s'il vous plait.

0

je code pour montrer comment faire here, mais pas CSS soit (mais pourrait être.)

Vous l'avez dans la « Ligne DataBound EVENT » - dans ce poste, je parle aussi de la perfomance entre ce versets ayant dans l'événement DataBound.

Questions connexes