写一个登陆用的用户控件。

Ascx文件中,放入TextBox控件,分别作为用户与密码的输入,再放入一个ImageButton,其它不多说

CodeBehind页面:

 

namespace GST.UI
{
 using System;
 using System.Data;
 using System.Drawing;
 using System.Web;
 using System.Web.UI.WebControls;
 using System.Web.UI.HtmlControls;

 /// <summary>
 /// 用户登录控件 
 /// </summary>
 public class Login : System.Web.UI.UserControl
 {

 //系统声明
  protected System.Web.UI.WebControls.TextBox txtUser;
  protected System.Web.UI.WebControls.TextBox txtPass;
  protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator1;
  protected System.Web.UI.WebControls.ImageButton imgSubmit;
  protected System.Web.UI.WebControls.RequiredFieldValidator RequiredFieldValidator2;

  //Declare Delegate

  public delegate void EventHandler(object sender,LoginEventArgs e);
  
  public event EventHandler LoginSystem ;

  public void OnLoginSystem(LoginEventArgs e)
  {
   if(LoginSystem!=null)
   {
    
            LoginSystem(this,e);  
   }
  }
       

  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   //Response.Write(this.FindControl("txtUser").UniqueID);
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  ///  设计器支持所需的方法 - 不要使用代码编辑器
  ///  修改此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {
   this.imgSubmit.Click += new System.Web.UI.ImageClickEventHandler(this.imgSubmit_Click);
   this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion

  private void imgSubmit_Click(object sender, System.Web.UI.ImageClickEventArgs e)
  {

  //引发事件
    this.OnLoginSystem(new LoginEventArgs(txtUser.Text ,txtPass.Text));
  }

 

 
  

  
 }


 /// <summary>
 /// 定义一个提供Login事件数据的类
 /// </summary>
 public class LoginEventArgs:System.EventArgs
 {
  private string _User;
  private string _Pass;

  public LoginEventArgs(string User,string Pass)
  {
            _User = User;
   _Pass = Pass;
  }
  

 //帐号属性
  public string User
  {
   get{return _User;}
   set{_User= value;}
  }

 //密码属性

  public string Pass
  {
   get{return _Pass;}
   set{_Pass = value;}
  }

 }
}

 

aspx页面调用

<body MS_POSITIONING="GridLayout">
  <form id="Form1" method="post" runat="server">
   <uc1:login id="Login1" runat="server"></uc1:login></form>
 </body>

后台代码部分

using System;
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Web;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;
using System.EnterpriseServices ;
using GST.Common ;
using GST.Purview;
using GST.UI;
using SysAdmin ;

namespace GST.Purview
{
 /// <summary>
 /// LoginPurView 的摘要说明。
 /// </summary>
 public class LoginPurView : BasePage
 {

//一定要声明。
  protected UI.Login Login1;

  //Declare
  
  private void Page_Load(object sender, System.EventArgs e)
  {
   // 在此处放置用户代码以初始化页面
   
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {   
   this.Load += new System.EventHandler(this.Page_Load);
   this.Login1.LoginSystem +=new GST.UI.Login.EventHandler(Login1_LoginSystem);

  }
  #endregion

  private void Login1_LoginSystem(object sender, LoginEventArgs e)
  {
             this.Sql ="Select Count(*) From tGSTAdmin Where AdminName='" + e.User +"'";
   try
   {
    if(Convert.ToInt32(DbConn.ExecuteScalar(Sql))==0)
    {
     ResponseMsg2("用户帐号不存在");
    }
    else
    {
                 
                    this.Sql="Select AdminGUID From tGSTAdmin Where AdminName='"+ e.User +"' And AdminPass='"+ e.Pass +"'";
     DataTable Dt = DbConn.ExecuteDataTable(this.Sql);
     if(Dt.Rows.Count > 0)
     {
                        this.Session["Admin"] = e.User ;
      this.Session["AdminGUID"] = Dt.Rows[0][0];
      this.DbConn.ExecuteSql("Update tGSTAdmin Set SrcIP='" + Request.UserHostAddress +"' Where AdminName='" + e.User +"'");
      Response.Redirect("Default.aspx");
     }
     else
     {
      ResponseMsg2("用户或者密码错误");                            
     }
    }
           
   }
   catch(Exception ex)
   {
     
                   ResponseError("出错",ex);
   }
  }
 }
}


 

 

  • 0
    点赞
  • 0
    收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页
评论

打赏作者

dbx

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值