2014-10-29 96 views
2

下面給出的代碼是我用來在母版頁中顯示菜單項的。我有一個登錄頁面,用戶從這裏登錄查看母版頁菜單項。 「管理員,工作者,經理等等」有不同類型的用戶。我想基於用戶身份驗證從主頁面隱藏菜單項。如果用戶登錄爲「admin」,那麼所有菜單項都應該可見,但如果用戶登錄爲「worker」,則應隱藏某些菜單項以便他們無法查看它。如何以簡單的方式做到這一點,而不是使其更加完善。如何根據登錄類型從母版頁中隱藏特定菜單項?

請幫我解決這種情況。我不擅長編程,所以請詳細解釋一下。提前致謝。

< asp:Menu id="Menu1" runat="server" width="200px" > 
    <Items> 
     < asp:MenuItem Text="EMPLOYEE DETAILS" NavigateUrl="~/Employee_Details.aspx" 
     Value="Employee_Details" >  
     </asp:MenuItem> 
     < asp:MenuItem Text="INSPECTION" NavigateUrl="~/Inspection_Details.aspx" Value="Inspection" > 
     </asp:MenuItem> 
     < asp:MenuItem Text="LOGIN DETAILS" NavigateUrl="~/Login_Details.aspx" Value="Login_Details" > 
     </asp:MenuItem> 
     < asp:MenuItem Text="WORK" NavigateUrl="~/WorkInProgress.aspx" Value="Work" > 
     </asp:MenuItem> 
    </Items> 
</asp:Menu> 

回答

2

檢查Here類似的問題。

您正在使用菜單。

您可以刪除像

Menu1.Items.Remove

var menu = Page.Master.FindControl("Menu1") as Menu; 
if(UserStatus != "Admin") 
{ 
Menu1.Items.Remove(Menu1.FindItem("INSPECTION")); 
Menu1.Items.Remove(Menu1.FindItem("WORK")); 
} 

一個項目,我建議你這樣做在Page_Load中。請轉到上面的鏈接或。請參閱 Here。很明顯 。希望它有幫助

相關問題