protected void gv_menu_RowDataBound(object sender, GridViewRowEventArgs e)

{

if (e.Row.RowType == DataControlRowType.DataRow)//判定当前的行是否属于datarow类型的行

{

//当鼠标放上去的时候 先保存当前行的背景颜色 并给附一颜色

e.Row.Attributes.Add("onmouseover", "currentcolor=this.style.backgroundColor;this.style.backgroundColor='yellow',this.style.fontWeight='';");

//当鼠标离开的时候 将背景颜色还原的以前的颜色

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

}

//单击行改变行背景颜色

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

{

  e.Row.Attributes.Add("onclick","this.style.backgroundColor='#99cc00'; this.style.color='buttontext';this.style.cursor='default';");

}

}

 

另外,在VS2003中,实现滑过/按下鼠标时,DataGrid高亮显示的代码是:

private void shownewstype_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)

{

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

{

e.Item.Attributes.Add("onmouseover","c=this.style.backgroundColor;this.style.backgroundColor='peru'");

e.Item.Attributes.Add("onmouseout","this.style.backgroundColor=c");

}


}