2013-09-24 75 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。

我希望這會拯救別人爲我經歷的頭痛。