请问一下各位,我在母版页中放了一个menu控件和一个label控件,我想点击菜单的某一项,把这一项的文本显示在label中,这么写怎么不对,只有点击菜单第一项是能获得文本,点击子菜单项和其它的菜单项,都得不到菜单项的文本,请各位帮忙 protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
Label1.Text = e.Item.Text;
}
{
Label1.Text = e.Item.Text;
}
<Items>
<asp:MenuItem Text="设备管理" Value="设备管理">
<asp:MenuItem Text="设备信息" Value="设备信息" NavigateUrl="~/browpage/equipmentinfo.aspx"></asp:MenuItem>
<asp:MenuItem Text="————" Value="————"></asp:MenuItem>
<asp:MenuItem Text="设备口令" Value="设备口令" NavigateUrl="~/browpage/equipmentpass.aspx"></asp:MenuItem>
<asp:MenuItem Text="————" Value="————"></asp:MenuItem>
<asp:MenuItem Text="设备购置" Value="设备购置" NavigateUrl="~/browpage/equipmentbuy.aspx"></asp:MenuItem>
<asp:MenuItem Text="————" Value="————"></asp:MenuItem>
<asp:MenuItem Text="设备维修" Value="设备维修" NavigateUrl="~/browpage/EquipmentFault.aspx"></asp:MenuItem>
<asp:MenuItem Text="————" Value="————"></asp:MenuItem>
<asp:MenuItem Text="设备清理" Value="设备清理" NavigateUrl="~/browpage/EquipmentCleanUp.aspx"></asp:MenuItem>
</asp:MenuItem>
<asp:MenuItem Text="IP地址信息" Value="IP地址信息" NavigateUrl="~/browpage/EquipmentIP.aspx">
</asp:MenuItem>
</Items>
<StaticMenuStyle BackColor="Transparent" />
<StaticMenuItemStyle BackColor="Transparent" ForeColor="White" Font-Bold="True" />
<DynamicHoverStyle BackColor="#4A4A4A" ForeColor="#FEBD00" Font-Bold="True" />
<StaticSelectedStyle BackColor="Transparent" ForeColor="#FEBD00" />
<StaticHoverStyle BackColor="Transparent" BorderColor="#FF8080" ForeColor="#FFCD00" />
这是menu控件的html代码,请各位帮帮忙看看,是不是哪里有问题,我怎么就是取不到菜单项的文本,谢谢!!
<DynamicMenuStyle BackColor="Transparent" />
<DynamicSelectedStyle ForeColor="White" />
<DynamicMenuItemStyle BackColor="#4A4A4A" ForeColor="White" Font-Bold="True" />
</asp:Menu>
<asp:MenuItem Text="设备维修" Value="设备维修" NavigateUrl="~/browpage/EquipmentFault.aspx?menuText='设备维修'"> </asp:MenuItem>
然后在服务器端获取参数menuText
protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
Label1.Text = Menu1.SelectedItem.Value;
}
其实8楼已经提供方法.
你在母版页PageLoad中再增加
if(Request.QueryString["menuText"] != null)
Label1.Text=Server.UrlDecode(Request.QueryString["menuText"].ToString());
<asp:MenuItem Text="IP地址信息" Value="~/browpage/EquipmentIP.aspx"> 然后在响应方法中实现如下代码: protected void Menu1_MenuItemClick(object sender, MenuEventArgs e)
{
MenuItem selectMenu = (MenuItem)e.Item; lblMenu.Text = selectMenu.Text;
this.Response.Write(string.Format("<script language='javascript'>window.open('{0}')</script>", selectMenu.Value));
}