2014-11-21 59 views
0

我有一个列表视图,用于在母版页中制作菜单,当用户登录到母版页时,应该隐藏某个列表项或将可见性设置为false。下面列出了我的附件。建议我一些解决方案。如何隐藏用于为特定用户制作菜单的特定列表项目?

<div id="cssmenu"> 
    <ul> 
     <li class="active"><a href="HomePage.aspx"><span>HOME</span></a></li> 
     <li class="has-sub"><a href="#"><span>MASTER</span></a> 
     <ul> 
      <li> <a href="InsDet.aspx"><span>INS MASTER</span></a></li> 
      <li> <a href="OperDet.aspx"><span>OPER MASTER</span> </a></li> 
      <li> <a href="EmployDet.aspx"><span>EMPLOY MASTER</span></a></li> 
      <li class="last"><a href="LoginDet.aspx"><span>LOGIN DETAILS</span></a> </li> 
     </ul> 
     </li> 
     <li><a href="Allot.aspx"><span>NEW CAR</span></a> </li> 
     <li><a href="Progress.aspx"><span>PROGRESS</span></a></li> 
    </ul> 
</div> 

我需要隐藏歌剧院硕士学位和我的名单聘请法师当某个员工登录和那些应该是可见的,当管理员登录进去。

+0

你尝试过什么?如果我有这样的东西,我检查我的代码隐藏用户,并根据用户呈现菜单,并将其放在页面上 – Mivaweb 2014-11-21 09:27:17

回答

1

我会给你一个开始,您可以添加其他地区:

// Get employee from Session 
Employee employee = (Employee)Session["Employee"]; 

// Check if employee exists 
if(employee != null) 
{ 
    RenderMenu(employee); 
} 

// Method to render list 
private void RenderMenu(Employee employee) 
{ 
    StringBuilder _menu = new StringBuilder(); 
    _menu.Append("<ul>"); 

    // Property boolean that indicates if the employee is an admin 
    if(employee.IsAdmin) 
    { 
     //Add items for admin 
    } 

    _menu.Append("</ul>"); 

    // Panel on the aspx page where you add the menu control 
    this.pnlMenu.Controls.Add(new LiteralControl() { Text = _menu.ToString() }); 
} 
相关问题