2013-09-24 76 views
0

是否有可能如何隐藏用户菜单而不是删除它们? 现在,我做的:隐藏UserMenu而不是删除

string currentPage = System.IO.Path.GetFileName(Request.Url.ToString());    

if (currentPage.Equals("Default.aspx")) 
{ 
    UserMenu.Items.Remove(UserMenu.FindItem("FindMerchant")); 
    UserMenu.Items.Remove(UserMenu.FindItem("Ladder")); 
} 

但随着去除userMenu的问题,是它导致一些视图状态的问题,当我尝试使用搜索功能在网页上。 因此,而不是删除,我需要做的是这样的:

UserMenu.Items.hide(UserMenu.FindItem("FindMerchant")); 

UserMenu.FindItem("FindMerchant").Visible = False; 

声明,它说,“隐藏”,而不是删除。

如果不是可以将它们隐藏起来,还有其他方法吗?

回答

0

你就不能设置CSS样式display=none;

UserMenu.FindItem("FindMerchant").Style.Add(HtmlTextWriterStyle.Display, "none"); 

或者添加其中display设置为none类:

UserMenu.FindItem("FindMerchant").Attributes.Add("class", "invisible"); 
+0

嗨。我似乎无法做到这一点。 – user1960836

0

只是一个建议,但也许使用.IsEnabled会在你的情况下更好的办法(无论你问的具体问题)? 大多数菜单显示完整菜单并启用/禁用菜单条目。 这不是完全解决您的问题,但也许值得一想。

1

在2天之后,我终于明白,这个问题是通过调用在错误的地方造成的方法。我在page_init中调用它,而不是Page_Load。

我希望这会拯救别人为我经历的头痛。