0

大家好我有一个MenuItem,我使用以下代码动态添加childst

MenuItem c1 = new MenuItem("text","value");
parent.ChildItems.Add(c1);

但是我需要同时向它添加一个css类,例如

c1.cssClass = "cssclass";
or 
c1.attributes.Add("Class","cssclass");

有人知道怎么做吗?

4

2 回答 2

1

MenuItem没有 CSS 类属性,而是将类添加到父级Menu

Menu menu = new Menu();
menu.CssClass = "myclass";

如果您想动态地将类添加到菜单中,请尝试创建一个辅助方法(C# 中的扩展方法):

public static class MenuExtension
{
    public static void AddCSSClass(this Menu menu, string className)
    {
        // additional code here to tidy / remove duplicates etc.

        menu.CssClass = string.Concat(menu.CssClass, " ", className);
    }
}

由于我们的Menu渲染,UL您可以使用 CSS 选择器将样式级联到所有子LI元素:

.myclass > li {
    // your attributes
}

或者,特定LI元素(如 nth-child 等仅在 CSS 3.0 中受支持):

.myclass > li:first-child {
    // your attributes
}

.myclass > li:nth-child(1) {
    // your attributes
}
于 2012-10-24T13:14:42.953 回答
-1

你可以试试MenuItemStyle property你的菜单

链接:http: //msdn.microsoft.com/fr-fr/library/system.web.ui.webcontrols.menuitemstyle.aspx

于 2012-10-24T13:18:27.840 回答