asp.net GridView和DataList实现鼠标移到行行变色
时间:2021-07-01 10:21:17
帮助过:6人阅读
在GridView控件的RowDataBound事件里添加以下代码
if (e.Row.RowType == DataControlRowType.DataRow)
{
//当鼠标移到行上时更改背景色
e.Row.Attributes.Add("onmouseover", "c=this.style.backgroundColor;this.style.backgroundColor='#EE82EE'");
//当鼠标移开时还原背景色
e.Row.Attributes.Add("onmouseout", "this.style.backgroundColor=c");
}
在设计页面添加了DataList控件后,我在使用DataList绑定数据时是通过单元格来绑定的,因此鼠标效果就在源代码页面去实现,如下例所示
<asp:DataList ID="DataList1" runat="server" BorderWidth="1" >
<ItemTemplate>
<tr onmouseover="this.style.backgroundColor='#8EC26F'" onmouseout="this.style.backgroundColor=''" >
<td>
<asp:Label ID="Label1" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.ID") %>'></asp:Label>
</td>
<td>
<asp:Label ID="Label2" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.Area") %>'></asp:Label>
</td>
</tr>
</ItemTemplate>
<HeaderTemplate>
Header1</td>
<td>Header2
</HeaderTemplate>
</asp:DataList>