重庆市国土局档案馆:GridView鼠标停留变色,行单击事件处理

来源:百度文库 编辑:中财网 时间:2024/04/29 04:02:10
【摘要】
在使用C#写CRM时遇到一个问题,GridView绑定了了数据后,我想在鼠标停留到GridView数据行时,行变色突出显示该行,并且鼠标点击该行时,将该条目的数据显示在GridView下面的控件自动将该行对应的数据显示出来。

【全文】
在使用C#写CRM时遇到一个问题,GridView绑定了了数据后,我想在鼠标停留到GridView数据行时,行变色突出显示该行,并且鼠标点击该行时,将该条目的数据显示在GridView下面的控件自动将该行对应的数据显示出来。我的实现步骤是:1.增加GridView的GVSelect_RowDataBound事件protected void GVSelect_RowDataBound(object sender, GridViewRowEventArgs e)    {        if (e.Row.RowType == DataControlRowType.DataRow)        {            //当鼠标停留时更改背景色            e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#8EC26F'");            //当鼠标移开时还原背景色            e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");            //设置悬浮鼠标指针形状为"小手"            e.Row.Attributes["style"] = "Cursor:hand";             //单击/双击 事件
            e.Row.Attributes.Add("OnClick", "ClickEvent('" + e.Row.Cells[10].FindControl("btnDetial").ClientID + "')");           
    //注:OnClick参数是指明为鼠标单击时间,后个是调用javascript的ClickEvent函数        }}2在页面的HTML里添加javascript函数,用来响应鼠标点击事件,因为ASP客户端不能主动调用服务端的函数,我在这里在Gridview添加一个辅助Button列,然后在ClickEvent(cId)函数中,调用这个Button的单击事件。3.响应事件
   protected void gdvTaskList_RowCommand(object sender, GridViewCommandEventArgs e)
    {
         if (e.CommandName == "Detail")
         {  //在这里对你需要的数据信息进行输出         SetClientInfo();//我的处理函数    }
    } GridView鼠标停留变色和单击处理事件,当鼠标在GridView的行上停留时,将该行变色,当单击该行时,做相应处理,记得要在 之间 加上RowDataBound=GVSelect_RowDataBound 属性


注释:
添加辅助列方法


               辅助列

 


样式:
.showcell{
  DISPLAY:none;
 }

单击行后改变行样式,需在页面增加


调用方法,将后台语句
//单击/双击 事件
e.Row.Attributes.Add("OnClick", "ClickEvent('" + e.Row.Cells[10].FindControl("btnDetial").ClientID + "')");
改为:
e.Row.Attributes.Add("OnClick", "ClickEvent('" + e.Row.Cells[10].FindControl("btnDetial").ClientID + "');selectx(this)");