e.Row.RowType == DataControlRowType.DataRow诠释(实例解释)

代码语句如下: 

protected void OnRowCreate(object sender, GridViewRowEventArgs e)
    {
        if (e.Row.RowType == DataControlRowType.DataRow)
        {
            if (e.Row.RowState == (DataControlRowState.Alternate | DataControlRowState.Normal)
                || e.Row.RowState == DataControlRowState.Normal)
            {
                ImageButton btnDelete = (ImageButton)(e.Row.FindControl("btnDelete"));
                btnDelete.Attributes["onclick"] = "javascript:return confirm('真的要删除码?');";
            }         
        }
    }

一、

首先解释下: if (e.Row.RowType == DataControlRowType.DataRow)

e.Row.RowType  是指当前行的类型
DataControlRowType 是GridView的行的类型集合 , 其中的DataRow是数据绑定行
这个判断语句的意思就是判断当前行是不是数据绑定行。

二、指定数据控件(例如 DetailsViewGridView)中行的状态。

e.Row.RowState == (DataControlRowState.Alternate | DataControlRowState.Normal)

判断当前行的状态,当前上面的代码用的少:要看看这个也许用的多:

if ((e.Row.RowState == (DataControlRowState.Edit | DataControlRowState.Alternate)) || (e.Row.RowState == DataControlRowState.Edit))

下面是引用msdn里的说明:

 

posted on 2009-12-25 13:16  遥望大海,云卷云舒  阅读(6471)  评论(0编辑  收藏  举报