【问题标题】:How set CSS on MenuItem in MenuItemDataBound如何在 MenuItemDataBound 中的 MenuItem 上设置 CSS
【发布时间】:2012-06-27 23:44:11
【问题描述】:

我一直在尝试寻找一种方法来设置 asp.menu 控件的样式。许多在线示例没有帮助,因为设置样式的属性不起作用(即 StaticMenuItemStyle-CssClass="SOMECLASS")。所以我希望有办法以编程方式做到这一点?请帮忙。

protected void Menu_MenuItemDataBound(object sender, MenuEventArgs e)
{
    if (e.Item.NavigateUrl.Trim() == _currentUrl.Trim())
    {
        // Something like this
        e.Item.CssClass = "SOMECLASS";
    }
}

编辑 我已经解决了我的站点导航问题。如果有使用 ASP.NET 菜单样式属性的方法,请告诉我!

protected void Menu_MenuItemDataBound(object sender, MenuEventArgs e)
{
    MenuItem menuitem = (MenuItem)e.Item;
    if (menuitem.NavigateUrl.Trim() == _currentUrl.Trim())
    {
        if (menuitem.Depth == 1)
        {
            menuitem.Text = "<span class=\"active" + menuitem.Depth + " selectedlevel1\">" + menuitem.Text + "</span>";
        }
        else
        {
            menuitem.Text = "<span class=\"active" + menuitem.Depth + " selectedlevel2\">" + menuitem.Text + "</span>";
        }
        while (menuitem.Parent != null)
        {
            menuitem = menuitem.Parent;
            String title = menuitem.Text;
            title = title.Replace("<span>", "");
            title = title.Replace("</span>", "");
            menuitem.Text = "<span class=\"active" + menuitem.Depth + "\">" + title + "</span>";
        }
    }
    else
    {
        menuitem.Text = "<span>" + menuitem.Text + "</span>";
    }
}

【问题讨论】:

    标签: asp.net menuitem aspmenu-control


    【解决方案1】:

    您应该将项目标记为选中

    e.Item.Selected = true;
    

    并设置DynamicSelectedStyle-CssClass(和/或StaticSelectedStyle-CssClass,老实说不确定哪个适用于您的情况)"SOMECLASS"

    编辑

    看来Menu控件和选择的类有问题。 This other question 为您的场景提供了一种可能对您有所帮助的解决方法。

    【讨论】:

    • @Anna: selected 未呈现,但应设置选定的 css 类。
    • 就是这样,选择的类没有设置。
    • :Menu> e.Item.Selected = true 已添加到 MenuItemDataBound
    • @Anna:我手头没有任何带有 asp 菜单的代码来检查这个。我发现这个类似的问题可能会对您有所帮助。看来选择的类stackoverflow.com/questions/2655377/…确实存在某种问题@
    猜你喜欢
    • 2017-05-28
    • 2012-11-22
    • 1970-01-01
    • 1970-01-01
    • 2022-09-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-09
    相关资源
    最近更新 更多