2011-03-31 36 views
0

U时有一个GridView(可以说gridview1)和u相关联的事件关于gridview的asp.net/C# RowDataBound事件查询

OnRowDataBound = "gridView1_RowDatabound" 

和u通常如下

protected void gridView1_RowDatabound(object sender, GridViewRowEventArgs e){ 

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

     } 
启动事件方法

为什么你必须再次检查行是否是数据行,据我了解,gridview1_rowdatabound事件发生时,只有当行被绑定到你提供的数据源。为什么你再次执行这个额外的检查?

你可以帮我解释一下吗?

由于在预期

回答

2

这是能够基于行类型来执行不同的操作:

一排可以是一个“标题”行或一个正常的“数据”行例如。

DataControlRowType枚举为您提供了可能出现何种类型行的一个不错的主意:

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

所以如果我删除了“if条件”我那么做什么都在RowDataBound事件的方法将适用于所有的行与它的类型无关?我可以从你的答案中得出推论吗? – 2011-03-31 10:40:24

+0

@ user653622是的,应该是这样的 – ntziolis 2011-03-31 10:54:17

相关问题