数据源绑定控件的Row/ItemDataBound事件

呈现 GridView 控件之前,该控件中的每一行必须绑定到数据源中的一条记录。将某个数据行(用 GridViewRow 对象表示)绑定到 GridView 控件中的数据以后,将引发 RowDataBound 事件

  所以我们可以在绑定的同时做一些事件处理,比如显示格式,js的调用等,现在我们就来简单的介绍一下用法

  首先我们要判断一下对哪些行处理绑定事件,然后再写事件

  protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
        if(e.Row.RowType==DataControlRowType.DataRow)
        {
            FangAnInfo ff= (FangAnInfo)e.Row.DataItem;
            Response.Write(ff.AddDate);
        }
    }

上面的这段代码主要就是获得控件中某行绑定的数据源中的值,这个值可以在控件中显示或者不显示,只要在数据源中存在就可以了,需要说明的是,如果你绑定数据源是一个泛型集合,那么你转换的时候的类型就是该泛型集合中的元素即对象:FangAnInfo ff= (FangAnInfo)e.Row.DataItem;如果你绑定的数据源是DataSet或者是DataTable,那么转换的时候就是DataRowView:DataRowView drv = (DataRowView)e.Item.DataItem;这样做的好处,就是可以直接获得改行中所有你想得到的值,代替了以前繁琐得到这些值的方法!

我们也可以在里面处理一下js的事件调用,如光帮效果,删除提示等

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

    {

        if (e.Row.RowType == DataControlRowType.DataRow)

        {

            e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor='#6699ff'");

            e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=currentcolor");

        }

    }

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)

          {

              if (e.Row.RowType == DataControlRowType.DataRow)

                {

                    LinkButton l = (LinkButton)e.Row.FindControl("LinkButton1");

                    l.Attributes.Add("onclick", "javascript:return " +

                   "confirm('确认删除要删除吗?')");

          }

       

其他的repeat和DataList用法一样,要加上

if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item)
 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值