2011-03-31 3 views
0

Lorsque u ont un gridview (permet de dire GridView1) et u associer un événementQuestion concernant événement RowDataBound dans gridview asp.net/C#

OnRowDataBound = "gridView1_RowDatabound" 

et u commencent généralement la méthode de l'événement comme suit

protected void gridView1_RowDatabound(object sender, GridViewRowEventArgs e){ 

     if (e.Row.RowType == DataControlRowType.DataRow){ 
     do something.. 
     } 

     } 

Pourquoi est-il nécessaire de vérifier à nouveau si la ligne est une ligne de données, si je comprends bien, l'événement gridview1_rowdatabound se produit uniquement lorsque les lignes sont liées par la source de données fournie. Pourquoi refaises-tu cette vérification supplémentaire?

Pouvez-vous me l'expliquer?

Merci d'avance

Répondre

2

C'est d'être en mesure d'effectuer des actions différentes en fonction du type de ligne:

Une ligne peut être un « tête » ligne ou une normale « des données » ligne par exemple.

Le DataControlRowType ENUM vous donne une assez bonne idée de ce que les types de lignes peuvent apparaître:

public enum DataControlRowType 
{ 
    Header, 
    Footer, 
    DataRow, 
    Separator, 
    Pager, 
    EmptyDataRow 
} 
+0

donc si je supprimer le « si la condition » alors que jamais je fais dans la méthode de l'événement RowDataBound s'appliquerait à tous les des rangs quel que soit son type? Puis-je tirer cette inférence de votre réponse? –

+0

@ user653622 oui cela devrait être le cas – ntziolis

Questions connexes