1.首先在页面 <% Page %> 中增加 EnableEventValidation="false"
2.在RowDataBound中给每一行添加事件
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
//首先判断是否是数据行
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标停留时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#CCCCFF'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
//点击行触发SelectedIndexChanged事件
PostBackOptions myPostBackOptions = new PostBackOptions(this);
myPostBackOptions.AutoPostBack = false;
myPostBackOptions.PerformValidation = false;
myPostBackOptions.RequiresJavaScriptProtocol = true; //加入javascript:头
String evt = Page.ClientScript.GetPostBackClientHyperlink(sender as GridView, "Select$" + e.Row.RowIndex.ToString());
e.Row.Attributes.Add("onclick", evt);
}
else if (e.Row.RowType == DataControlRowType.Header)
{
e.Row.Attributes.Add("style", "background-image:url('img/bg.gif')");
}
}
本文介绍如何通过修改ASP.NET中的GridView控件属性实现鼠标悬停改变背景颜色、鼠标离开恢复颜色以及点击行触发事件等功能,提高了用户体验并展示了具体的实现代码。
4928

被折叠的 条评论
为什么被折叠?



