C# 在asp:菜单中将父项和子项都设置为“已选定”

C# 在asp:菜单中将父项和子项都设置为“已选定”,c#,css,asp.net,C#,Css,Asp.net,因此,我尝试执行以下操作,以便为所选子项及其父项设置StaticSelectedStyle CssClass和DynamicSelectedStyle CssClass的样式。以下代码仅导致父级设置样式: private bool SetSelectedMenuItem(MenuItemCollection menuItems) { foreach (MenuItem item in menuItems) { string ur

因此,我尝试执行以下操作,以便为所选子项及其父项设置StaticSelectedStyle CssClass和DynamicSelectedStyle CssClass的样式。以下代码仅导致父级设置样式:

  private bool SetSelectedMenuItem(MenuItemCollection menuItems)
    {
        foreach (MenuItem item in menuItems)
        {
            string url = ResolveUrl(item.NavigateUrl);
            string pageUrl = Request.RawUrl;
            if (pageUrl.Equals(url))
            {
                item.Selected = true;

                if (item.Parent != null)
                {
                    item.Parent.Selected = true;
                }
                return true;
            }

            if (SetSelectedMenuItem(item.ChildItems))
            {
                return true;
            }
        }
        return false;
    }
甚至可以将子项及其父项的选定值设置为true吗


任何有助于这项工作将是伟大的

这是不可能的。看一看。备注部分的最后一行说明:

在菜单控件中一次只能选择一个菜单项


是否有其他方法将css类强制到父项上?可能是jQuery。如果您使用此回发所做的只是设置样式,那么这可能是更好的选择。