(HtmlTextWriterTag.Tr) writer.RenderBeginTag(HtmlTextWriterTag.Td) writer.Write("密码:") writer.RenderEndTag() writer.RenderBeginTag(HtmlTextWriterTag.Td) writer.AddAttribute(HtmlTextWriterAttribute.Type, "Password") writer.AddAttribute(HtmlTextWriterAttribute.Name, Me.UniqueID & ":Pass") writer.AddAttribute(HtmlTextWriterAttribute.Maxlength, "30") writer.RenderBeginTag(HtmlTextWriterTag.Input) writer.RenderEndTag() writer.RenderEndTag() writer.RenderEndTag() writer.RenderBeginTag(HtmlTextWriterTag.Tr) writer.AddAttribute(HtmlTextWriterAttribute.Cols, "2") writer.RenderBeginTag(HtmlTextWriterTag.Td) writer.AddAttribute(HtmlTextWriterAttribute.Type, "submit") writer.AddAttribute(HtmlTextWriterAttribute.Name, Me.UniqueID) writer.AddAttribute(HtmlTextWriterAttribute.value, "提交") writer.RenderBeginTag(HtmlTextWriterTag.Input) writer.RenderEndTag() writer.RenderEndTag() writer.RenderEndTag() writer.RenderEndTag() Catch _error As Exception System.Web.HttpContext.Current.Response.Write("未能完成请求,错误信息如下:" & _error.Message) Exit Sub End Try End Sub Public Function LoadPostData(ByVal postDataKey As String, ByVal postCollection As System.Collections.Specialized.NamevalueCollection) As Boolean Implements System.Web.UI.IPostBackDataHandler.LoadPostData Dim _txtUserName As String = postCollection(Me.UniqueID & ":User") Dim _txtPass As String = postCollection(Me.UniqueID & ":Pass") If _txtUserName = "" Or _txtPass = "" Then Return True Else txtUser = _txtUserName txtPass = _txtPass OnCheckMain() Return False End If End Function
Public Sub RaisePostDataChangedEvent() Implements System.Web.UI.IPostBackDataHandler.RaisePostDataChangedEvent RaiseEvent EnterEmpty(Me, New EventArgs()) End Sub Private Sub OnCheckMain() ''''验证用户的合法性,引发CheckedResult事件 Dim _connStr As String = ConnStr Dim _conn As New SqlConnection(_connStr) Dim _comm As New SqlCommand() Dim _dataReader As SqlDataReader Try _comm.Connection = _conn _comm.CommandText = "select * from " & DataTable & " where " & ColUser & "=''''" & txtUser & "'''' and " & ColPass & "=''''" & txtPass & "''''" _comm.CommandType = CommandType.Text _conn.Open() _dataReader = _comm.ExecuteReader(CommandBehavior.CloseConnection) If _dataReader.Read Then RaiseEvent CheckedResult(Me, New LoginEvent(txtUser, txtPass, True)) Else RaiseEvent CheckedResult(Me, New LoginEvent(txtUser, txtPass, False)) End If _dataReader.Close() Catch _error As Exception Throw New Exception(_error.Message) Finally If _conn.State = ConnectionState.Open Then _conn.Close() End Try End Sub End Class ---------------------------------------------------------源码2 ''''2004.6.10 ''''Programmer by czclk ''''自定义事件类LoginEvent,该事件参数e继承自EventArgs,含有用户名,密码,登录合法性(布尔值) Public Class LoginEvent Inherits EventArgs Public Sub New() End Sub Public Sub New(ByVal user As String, ByVal pass As String, ByVal result As Boolean) _userName = user _userPass = pass _CheckedPass = result End Sub Private _userName As String Private _userPass As String Private _CheckedPass As Boolean Public Property CheckPass() As Boolean Get Return _CheckedPass End Get Set(ByVal value As Boolean) _CheckedPass = value End Set End Property Public Property UserName() As String Get Return _userName End Get Set(ByVal value As String) _userName = value End Set End Property Public Property UserPass() As String Get Return _userPass End Get Set(ByVal value As String) _userPass = value End Set End Property End Class