2011-11-28 48 views
3

我有一个称为frmLogin的表单。我有Login_1Authenticate事件处理程序中的代码,用于检查输入的用户名和密码的安全级别。然后根据安全级别,它将显示或不显示我的主窗体上名为frmMain的链接。如果它是安全级别“A”,我想完全控制,但如果它的安全级别为“U”,那么我想要链接按钮和图像按钮从frmMain中删除。其中的两个来禁用一个例子是:Page_Load事件中的表单身份验证

linkbtnEmployee
imgbtnNewEmployee

linkbtnViewUserActivity
imgbtnViewUserActivity

我需要写在Page_Load事件的代码,但我不知道怎么写它。 下面是我的frmLogin页面代码:

public partial class frmLogin : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

    } 
    protected void Login1_Authenticate(object sender, AuthenticateEventArgs e) 
    { 

     dsUser dsUserLogin; 


     string SecurityLevel; 


     dsUserLogin = clsDataLayer.VerifyUser(Server.MapPath("PayrollSystem_DB.mdb"), 
         Login1.UserName, Login1.Password); 


     if (dsUserLogin.tblUserLogin.Count < 1) 
     { 
      e.Authenticated = false; 
      return; 
     } 


     SecurityLevel = dsUserLogin.tblUserLogin[0].SecurityLevel.ToString(); 


     switch (SecurityLevel) 
     { 

      case "A": 
       // Add your comments here 
       e.Authenticated = true; 
       Session["SecurityLevel"] = "A"; 
       break; 
      case "U": 
       // Add your comments here 
       e.Authenticated = true; 
       Session["SecurityLevel"] = "U"; 
       break; 
      default: 
       e.Authenticated = false; 
       break; 
     } 
    } 
} 

回答

2

那么,如果你想他们是看不见的使用:

linkbtnEmployee.Visible = false; 
imgbtnNewEmployee.Visible = false; 
+0

我会使用”if“语句吗?如果是的话,它将如何建立?谢谢 – Mike

+0

@Mike:那么你可以使用你用于SecurityLevel的开关。并且在每种情况下根据安全级别将您想要的按钮变为不可见。 – Tudor

+0

谢谢,但这样做后,我得到一个错误,说“名称'linkbtnNewEmployee'在当前上下文中不存在”。我有正确命名的标签和图像。他们虽然在frmMain。上面的代码是frmLogin。这是问题吗?谢谢 – Mike