Gridview的RowDataBound事件可以做很多事情

protected void gvTest_RowDataBound(object sender, GridViewRowEventArgs e)
        {
            //如果是绑定数据行
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                //鼠标经过时,行背景色变
                e.Row.Attributes.Add("onmouseover", "this.style.backgroundColor='#E6F5FA'");
                //鼠标移出时,行背景色变
                e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor='#FFFFFF'");
                //为gridview行添加双击事件
                string url = " http://www.baidu.com";
                e.Row.Attributes.Add("ondblclick", "javascript:parent.location.href='"+url+"'");
                //为gridview列添加click事件
                e.Row.Cells[3].Attributes.Add("onclick", "javascript:parent.location.href='" + url + "'");
            }
            //如果是绑定数据行
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                if (e.Row.RowState == DataControlRowState.Normal || e.Row.RowState == DataControlRowState.Alternate)
                {
                    //删除前弹出确认框
                    ((LinkButton)e.Row.Cells[6].Controls[0]).Attributes.Add("onclick", "javascript:return confirm('你确认要删除:\"" + e.Row.Cells[2].Text + "\"吗?')");
                }
            }
            if (e.Row.RowIndex != -1)//自动生成编码列
            {
                int id = e.Row.RowIndex + 1;
                e.Row.Cells[0].Text = id.ToString();
            }
            if (e.Row.RowIndex != -1)//过长的内容,用...代替
            {
                string strInfo = e.Row.Cells[2].Text;
                e.Row.Cells[2].Text = SubStr(strInfo, 1);
                e.Row.Cells[2].ToolTip = strInfo;
            }
            if (e.Row.RowIndex == 5)//突出显示某信息
            {
                e.Row.Cells[0].BackColor = System.Drawing.Color.Red;
            }
        }
        public string SubStr(string sString, int nLeng)
        {
            if (sString.Length <= nLeng)
            {
                return sString;
            }
            string sNewStr = sString.Substring(0, nLeng);
            sNewStr = sNewStr + "...";
            return sNewStr;
        }

你可能感兴趣的:(GridView)