我有一个多视图和一个菜单在我的ASP.NET页面-每个菜单项有一个值属性,对应于视图索引的标签显示。有时我需要用编程的方式设置活动视图,这对于MultiView很有效,但是设置Menu控件的Selected属性就有点困难了。我可以循环遍历每一项,直到值与我想要显示的视图索引相匹配,但这似乎有点笨拙。有什么想法吗?
oxiaedzo1#
我建议使用MultiView的OnActiveViewChanged事件来选择菜单项。
protected void myMultiView_ActiveViewChanged(object sender, EventArgs e) { int index = ((MultiView)sender).ActiveViewIndex; myMenu.FindItem(index.ToString()).Selected = true; }
字符串这样,每当视图被更改时(通过SetActiveView()或其他方式),菜单选择将保持同步。请注意,您可能还需要在菜单的OnMenuItemClick事件上设置活动视图。
OnMenuItemClick
6ovsh4lw2#
下面的代码为我工作
if (transViewFlag == 0) { MultiView1.ActiveViewIndex = 0; MenuTransactions.FindItem("0").Selected = true; } else { MultiView1.ActiveViewIndex = 1; MenuTransactions.FindItem("1").Selected = true; }
字符串
2条答案
按热度按时间oxiaedzo1#
我建议使用MultiView的OnActiveViewChanged事件来选择菜单项。
字符串
这样,每当视图被更改时(通过SetActiveView()或其他方式),菜单选择将保持同步。请注意,您可能还需要在菜单的
OnMenuItemClick
事件上设置活动视图。6ovsh4lw2#
下面的代码为我工作
字符串