如何更改TemplateField的颜色

时间:2017-05-04 08:28:51

标签: c# html css asp.net

我想知道如何使用CSS更改templateField的背景颜色。我试图在HTML页面中设置它,如:

<ItemTemplate>
  <asp:Label` BackgroundColor="White">

但是当我进行鼠标悬停时,它是不起作用的,因为BackgroundColor会保持不变....

enter image description here

2 个答案:

答案 0 :(得分:1)

如果你想在下面

enter image description here

然后改为

<asp:TemplateField ItemStyle-BackColor="LightGreen">
                <ItemTemplate>
                    <asp:Label ID="ID" runat="server" Text='<%# Eval("ID") %>' ></asp:Label>
                </ItemTemplate>
            </asp:TemplateField>

答案 1 :(得分:0)

一个TemplateField只不过是html中的<tr>。所以你可以直接应用CSS类

<asp:TemplateField ItemStyle-CssClass="class">
//or
<asp:TemplateField ItemStyle-BackColor="White">

或者使用CSS中的继承

<style>
    #<%= GridView1.ClientID %> tr {
        background-color: green;
    }
</style>

<强>更新

要获得您描述的内容,请通过为GridView和Label分配类来使用纯CSS解决方案

<asp:GridView ID="GridView1" runat="server" CssClass="GridViewClass">
    <Columns>
        <asp:TemplateField ItemStyle-CssClass="class" ItemStyle-BackColor="">
            <ItemTemplate>
                <asp:Label ID="Label1" runat="server" Text="Label" CssClass="GridViewLabel"></asp:Label>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

<style>
    .GridViewClass tr {
        background-color: green;
    }

    .GridViewLabel {
        background-color: white;
    }

    .GridViewClass tr:hover, .GridViewClass tr:hover .GridViewLabel {
        background-color: red;
    }
</style>