• RowDataBound(转载)


    protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
        {
           
    if (e.Row.RowType == DataControlRowType.Header)
            {
               
    //do nothing
            }
           
    if (e.Row.RowType == DataControlRowType.DataRow)
            {
                Response.Write(GridView1.Rows[
    0].Cells.Count.ToString());
            }
        }

    第一次RowDataBound被执行的时候,是Header被创建后加进GridView的时候。也就是if(e.Row.RowType==DataControlRowType.Header){ //这里被执行;}
    这时候GridView1.Rows[0]你根本访问不到,因为GridView.Rows的时候是不考虑Header的。

    第二次RowDataBound被执行的时候,第一行的GridViewRow已经被创建,数据也被绑进GridViewRow里了。但真到RowDataBound执行结束,你都不可能访问到GridView1.Rows[0],因为GridViewRow还没添加进GridView的集合当中。

    当第三次DataRowBound执行的时候,这是候才有一个真正包含数据的GridViewRow已经被添加进GridView.Rows集合。这时才能访问到GridView.Rows[0]。

    if (e.Row.RowType == DataControlRowType.DataRow)
    {
        Response.Write(GridView1.Rows[0].Cells.Count.ToString());
    }
    if段里的代码第一次执行时肯定也是访问不到GridView.Rows[0]的,因为根本没有。
    原文出处:RowDataBound

  • 相关阅读:
    slf4j的使用
    hashMap
    HBase
    HBase应用快速开发
    初学MongoDB 遇到提示由于目标计算机积极拒绝,无法连接
    Flask学习中运行“helloworld”出现UnicodeDecodeError: 'utf-8' codec can't decode问题
    doGet或doPost方法没有调用的一个原因
    markdown测试
    tomcat集成到IDEA与部署项目
    tomcat部署项目的方式
  • 原文地址:https://www.cnblogs.com/purplefox2008/p/1648725.html
Copyright © 2020-2023  润新知