将cssclass添加到datalist中的面板中的标签

时间:2010-11-02 15:01:43

标签: c# asp.net

我在datalist的面板中有标签,我在item databound中为datalist添加了代码,如果特定条件代码工作得很好,我会找到标签,但是cssclass没有在label上做任何动作。我不知道是什么是错的?

      protected void DataList1_ItemDataBound(object sender, DataListItemEventArgs e)
{
    string LanguageID = Globals.GetSuitableLanguage(Page);
    Label lbl = e.Item.FindControl("LblText") as Label;
    Panel Pnl = e.Item.FindControl("pnlModal") as Panel;
    if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
    {
        LblHead = e.Item.FindControl("Label1") as Label;
    }


    if (LblHead != null && LanguageID == "ar")
    {
        LblHead.Attributes.Add("CssClass", "hed_logo2");
    }
        }

1 个答案:

答案 0 :(得分:0)

CssClass是asp.net运行时调用应用于元素的css类的内容。但是,当您使用Attributes集合时,您将直接将值发送到元素的HTML。

在大多数情况下,asp.net和属性的html名称相同(名称,标题......),但是存在许多小的差异。应用css类的属性在asp.net中称为CssClass,在html dom中称为class

所以而不是

LblHead.Attributes.Add("CssClass", "hed_logo2");

写一下

LblHead.Attributes.Add("class", "hed_logo2");

这应该解决问题。