2010-08-09 37 views
1
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="admin.aspx.cs" Inherits="******._Default" 
    title="Administration" 
%> 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 
    1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> 

<html xmlns="http://www.w3.org/1999/xhtml" > 
    <head id="mainHead" runat="server" > 
     <title>Administration</title> 
     <link rel="Stylesheet" href="../style/admin.css" />  
    </head> 
    <body> 

    <div class="topMenu">  

     <asp:Panel id="mnu0" runat="server" class="navButton"> 
      <a href="admin.aspx" class="navLink">Admin Home</a> 
     </asp:Panel> 

     <asp:Panel id="mnu1" runat="server" class="navButton"> 
      <a href="admin.aspx" class="navLink">User Manager</a> 
     </asp:Panel> 

     <asp:Panel id="mnu2" runat="server" class="navButton"> 
      <a href="admin.aspx" class="navLink">Products</a> 
     </asp:Panel> 

    </div> 

    <br /><br /> 
    <div class="subMenu"> 
     <a href="products.aspx" class="subLink">Products</a> <a href="productCats.aspx" class="subLink">Categories</a> 
    </div> 

    <br /><br /> 
    Welcome to the Admin 

    </body> 
</html> 

后面的代码:ASP.net C#变化潘内尔类

公共部分类_Default:System.Web.UI.Page { 保护INT菜单ID;

protected void Page_Load(object sender, EventArgs e) 
{ 

    string menuIDdata = Page.Request.QueryString["mid"]; 
    menuID = 0; 

    // Check the user is allowed here 
    if (!Roles.IsUserInRole("Admin")) 
    { 
     Response.Redirect("../default.aspx"); 
    } 

    // Get the menu ID 
    if (int.TryParse(menuIDdata, out menuID)) 
    { 
     menuID = int.Parse(menuIDdata); 
    } 
    else 
    { 
     menuID = 0; 
    } 

    mnu0.CssClass = "navButtonO"; 

} 

}

我想更改类的菜单,这取决于一个被选中的,但有改变类,而不是一个开关的一种优雅的方式/ if语句?例如:

mnu[menuID].CssClass = "navButtonO"; 

会改变菜单项的类。

回答

0

Try:

var panel = this.Page.FindControl(menuId) as Panel; 
panel.CssClass = "navButtonO";