我如何在我的ASP.NET控件中使用黑色而没有下划线的LinkBut​​ton?

时间:2012-08-07 11:18:37

标签: c# asp.net css listview linkbutton

我有一个ASP.NET应用程序,我使用ListView。如果我创建一个ListItem(一行),我想使用一个LinkBut​​ton。我希望这个LinkBut​​ton有CSS属性..

color:Black;
text-decoration:none;

但是,如果我启动应用程序。我将linkBut​​tons视为蓝色并带下划线:(

这里是我的代码:

ASPX:

...

<asp:ListView runat="server" ID="myListView">

        <LayoutTemplate>
            <table id="UserTable" runat="server" border="0">
                <tr id="Tr1" style="background-color:#E5E5FE">
                    <th runat="server"><asp:LinkButton ID="lnkBenutzer" runat="server" >id_Benutzer</asp:LinkButton></th>
                    <th runat="server"><asp:LinkButton ID="lnkemail" runat="server" >id_Email</asp:LinkButton></th>
                    <th runat="server"><asp:LinkButton ID="lnkVorname" runat="server" >id_Vorname</asp:LinkButton></th>
                    <th runat="server"><asp:LinkButton ID="lnkNachname" runat="server" >id_Nachname</asp:LinkButton></th>
                    <th runat="server"><asp:LinkButton ID="lnkTelefon" runat="server" >id_Telefon</asp:LinkButton></th>
                </tr>
                <tr runat="server" id="ItemPlaceholder">
                </tr>
            </table>
        </LayoutTemplate>

        <ItemTemplate>

            <tr> 

                <td align="left" ><asp:LinkButton ID="Label1" Text='<%# Eval("Benutzername") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label2" Text='<%# Eval("eMail") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label3" Text='<%# Eval("Vorname") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label4" Text='<%# Eval("Nachname") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label5" Text='<%# Eval("Telefonnummer") %>' runat="server" /></td>

             <td align="left"><asp:Button ID="Button1" Text="Anzeigen" OnCommand="Button1_Command" CommandName="Select" CommandArgument='<%# Container.DataItemIndex %>'  runat="server" /></td>

              <td align="left"><asp:Label ID="Label6" Text='<%# Eval("GUID") %>' runat="server" Visible="False" /></td>


            </tr>

        </ItemTemplate>

        <AlternatingItemTemplate>

            <tr style="background-color:#EFEFEF"> 

                <td align="left" ><asp:LinkButton ID="Label1" Text='<%# Eval("Benutzername") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label2" Text='<%# Eval("eMail") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label3" Text='<%# Eval("Vorname") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label4" Text='<%# Eval("Nachname") %>' runat="server" /></td>
                <td align="left"><asp:Label ID="Label5" Text='<%# Eval("Telefonnummer") %>' runat="server" /></td>

            <td align="left"><asp:Button ID="Button1" Text="Anzeigen" OnCommand="Button1_Command" CommandName="Select" CommandArgument='<%# Container.DataItemIndex %>'  runat="server" /></td>

                <td align="left"><asp:Label ID="Label6" Text='<%# Eval("GUID") %>' runat="server" Visible="False" /></td>

            </tr>

        </AlternatingItemTemplate>

        </asp:ListView>

...

我的CSS文件:

...

#Label1
{
    color:Black;
    text-decoration:none;

}  

...

有什么问题?

tarasov

3 个答案:

答案 0 :(得分:6)

#Label1表示只有最终HTML中带有id="Label1“的控件才会被CSS格式化。

当你在ASP.NET中创建一个控件时(无论是在页面中,用户控件,转发器等),它不会在HTML中被称为Label1,而是像ctl100_Label1那样。

您需要做的是将CSS创建为,然后使用CssClass在控件上使用该类。

.MyLabel {
  color: Black;
  text-decoration: none;
}

<asp:Label ID="Label2" Text='<%# Eval("eMail") %>' runat="server" CssClass="MyLabel" />

另一个选项(而不是将CssClass放入每个asp:Label)是使用其中一个父控件的IDCssClass,并使用该选项代替。例如......

<table id="UserTable" runat="server" border="0" class="UserTableClass">

.UserTableClass span {
  color: Black;
  text-decoration: none;
}

答案 1 :(得分:4)

解决方案

...

<td align="left" ><asp:LinkButton ForeColor="Black" Font-Underline="false" ID="Label1" Text='<%# Eval("Benutzername") %>' runat="server" /></td>

...

答案 2 :(得分:0)

默认情况下,ASP ID的工作方式不同,与HTML ID不同,如果您想使用ClientIDMode,可以告诉它。

或者,您可以设置CssClass的{​​{1}}。

asp:LinkButton