删除子菜单项
问题描述:
我有一个asp菜单如下所示。我想在后面的代码中隐藏具有文本“Old”的子项目。删除子菜单项
<asp:Menu ID="Viewmenu" runat="server" Visible="true" PathSeparator="," BackColor="#FFFFEB" DynamicHorizontalOffset="2" >
<Items>
<asp:MenuItem Text="View" Value="New Item">
<asp:MenuItem Text="Old" Value="Old que"></asp:MenuItem>
<asp:MenuItem Text="Profile" Value="Address"></asp:MenuItem>
</asp:MenuItem>
</Items>
</asp:Menu>
所以就用finditem然后项目从后面的代码除去如上所示,没有任何错误代码下方运行
Dim s As MenuItem
s = Viewmenu.FindItem("New Item,Old que")
Viewmenu.Items.Remove(s)
但是,但是具有文本=“老”不除去菜单项和(在我的情况下,我试图从菜单项中删除子菜单项) 我尝试使用Viewmenu.FindItem("New Item")
来检查代码是否正常工作,并按预期删除完整菜单本身。
那么为什么删除菜单项中的菜单项不起作用?我错过了什么?或者有没有更好的方法来实现从代码背后的相同?
答
尝试下面的代码,希望有帮助,并且使用C#的标签,但我猜你的代码是VB
C#代码
MenuItem parent = Viewmenu.FindItem("New Item");
MenuItem s = Viewmenu.FindItem("@New Item\Old que");
parent.ChildItems.Remove(s);
VB代码
Dim parent As MenuItem = Viewmenu.FindItem("New Item")
Dim s As MenuItem = Viewmenu.FindItem("New Item,Old que")
parent.ChildItems.Remove(s)
答
VB代码那为我工作是:
Dim parent As MenuItem = Viewmenu.FindItem("New Item")
Dim s As MenuItem = Viewmenu.FindItem("New Item/Old que")
parent.ChildItems.Remove(s)
请注意第二行的正斜杠。
它工作。 C#标记是错误的。 – 2014-12-04 11:40:11