Click here to Skip to main content
15,867,834 members
Please Sign up or sign in to vote.
0.00/5 (No votes)
Hi,
How to Hide few of the Menu in Master Page based on Username in asp.net
ASP.NET
<pre><div id="menu2" class="menu" >
    <ul style="background-color:green;color:black;font-family:Shruti"">
        <li id="link1" runat="server"><a href="Home.aspx">Home</a></li>
        <li id="link2" runat="server" class="navigation_s"><a href="Registration.aspx">Add User</a></li>
        <li id="link3" runat="server"><a href="Report.aspx">EmpReport</a></li>
        <li id="link4" runat="server"><a href="Report2.aspx">Report</a></li>
        <li id="link5" runat="server"><a href="Contact.aspx">Contact</a></li>
        
        
    </ul>
    <div class ="left"></div>
    <div class="right"></div>   
    </div>


What I have tried:

ASP.NET
<pre><div id="menu2" class="menu" >
    <ul style="background-color:green;color:black;font-family:Shruti"">
        <li id="link1" runat="server"><a href="Home.aspx">Home</a></li>
        <li id="link2" runat="server" class="navigation_s"><a href="Registration.aspx">Add User</a></li>
        <li id="link3" runat="server"><a href="Report.aspx">EmpReport</a></li>
        <li id="link4" runat="server"><a href="Report2.aspx">Report</a></li>
        <li id="link5" runat="server"><a href="Contact.aspx">Contact</a></li>
        
        
    </ul>
    <div class ="left"></div>
    <div class="right"></div>   
    </div>
Posted
Updated 10-Oct-17 3:27am

1 solution

Below is an example, please change role to username in your code, and also you break the loop once menu item is found.

protected void Page_Load(object sender, EventArgs e)
    {
        if (!Roles.IsUserInRole("Admin"))
        {
            MenuItemCollection menuItems = mTopMenu.Items;
            MenuItem adminItem = new MenuItem();
            foreach (MenuItem menuItem in menuItems)
            {
                if (menuItem.Text == "Roles")
                    adminItem = menuItem;
            }
            menuItems.Remove(adminItem);
        }
    }
 
Share this answer
 
Comments
Member 12605293 10-Oct-17 9:37am    
Hi Atlapure,
i dont have Admin value ,instead i am passing name of the person
F-ES Sitecore 10-Oct-17 9:48am    
That's a bad idea, you should base things on roles, not users, but if you must then use the username in the "if" instead of the role.
Atlapure Ambrish 11-Oct-17 2:43am    
no problem, use username instead of role in the if statement as I have already mentioned in my solution.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



CodeProject, 20 Bay Street, 11th Floor Toronto, Ontario, Canada M5J 2N8 +1 (416) 849-8900