打印本文 打印本文 关闭窗口 关闭窗口
原创的用户登录服务器控件[vb.net]
作者:武汉SEO闵涛  文章来源:敏韬网  点击数1455  更新时间:2009/4/23 18:59:59  文章录入:mintao  责任编辑:mintao

晕,写了两个晚上的,同时也是自己学asp.net一年多以来,第一次有满意的作品!希望再接再厉!

我有信心做个优秀的人民教师和优秀的.net程序员!:)

''''2004.6.10
''''Programmer by czclk
''''自学.net一年,第一个自己写的用户登录控件
''''事件CheckedResult,该事件参数e继承自EventArgs,含有用户名,密码,登录合法性(布尔值)
''''事件EnterEmpty,当用户名、密码文体框为空值时引发
Imports System.ComponentModel
Imports System.Web.UI
Imports System.Web.UI.WebControls
Imports System.Data.SqlClient
")> Public Class Login
    Inherits System.Web.UI.WebControls.WebControl
    Implements IPostBackDataHandler
    Public Delegate Sub CheckedEvent(ByVal sender As Object, ByVal e As LoginEvent)
    Public Event EnterEmpty As EventHandler
    Public Event CheckedResult As CheckedEvent
    Private _user As String
    Private _pass As String
    Private _dataBase As String
    Private _dataTable As String
    Private _dataBaseUserName As String
    Private _dataBasePass As String
    Private _server As String
    Private _colUser As String
    Private _colPass As String
    Private _txtUser As String
    Private _txtPass As String

    Public Property ColUser() As String        ''''属性--用户名字段
        Get
            Return _colUser
        End Get
        Set(ByVal value As String)
            _colUser = value
        End Set
    End Property
    Public Property ColPass() As String        ''''属性--密码字段
        Get
            Return _colPass
        End Get
        Set(ByVal value As String)
            _colPass = value
        End Set
    End Property
    Public Property Server() As String        ''''属性--SQL服务器名
        Get
            Return _server
        End Get
        Set(ByVal value As String)
            _server = value
        End Set
    End Property
    Public Property DataBaseUserName() As String        ''''属性--数据库登录用户
        Get
            Return _dataBaseUserName
        End Get
        Set(ByVal value As String)
            _dataBaseUserName = value
        End Set
    End Property
    Public Property DataBasePass() As String        ''''属性--数据库登录密码
        Get
            Return _dataBasePass
        End Get
        Set(ByVal value As String)
            _dataBasePass = value
        End Set
    End Property
    Public Property DataBase() As String        ''''属性--数据库名
        Get
            Return _dataBase
        End Get
        Set(ByVal value As String)
            _dataBase = value
        End Set
    End Property
    Public Property DataTable() As String        ''''属性--数据表
        Get
            Return _dataTable
        End Get
        Set(ByVal value As String)
            _dataTable = value
        End Set
    End Property
    Private ReadOnly Property ConnStr() As String        ''''属性--构成连接字符串
        Get
            Dim _connStr As New Text.StringBuilder()
            With _connStr
                .Append("server=" & Server & ";")
                .Append("Initial catalog=" & DataBase & ";")
                .Append("User ID=" & DataBaseUserName & ";")
                .Append("PassWord=" & DataBasePass & ";")
            End With
            Return _connStr.ToString
        End Get
    End Property
    Private Property txtUser() As String        ''''属性--获取用户名文本框值
        Get
            Return _txtUser
        End Get
        Set(ByVal value As String)
            _txtUser = value
        End Set
    End Property
    Private Property txtPass() As String        ''''属性--获取密码文本框值
        Get
            Return _txtPass
        End Get
        Set(ByVal value As String)
            _txtPass = value
        End Set
    End Property
    Private Sub CheckInit()                     ''''过程--验证连接数据库字符串的完整性
        If DataBase = "" Or DataTable = "" Or DataBaseUserName = "" Or DataBasePass = "" Then
            Throw New Exception("缺少相应的参数!")
        End If
    End Sub
    Protected Overrides Sub Render(ByVal writer As System.Web.UI.HtmlTextWriter) ''''呈现服务器控件
        Try
            CheckInit()
            writer.RenderBeginTag(HtmlTextWriterTag.Table)
            writer.RenderBeginTag(HtmlTextWriterTag.Tr)
            writer.RenderBeginTag(HtmlTextWriterTag.Td)
            writer.Write("用户名:")
            writer.RenderEndTag()
            writer.RenderBeginTag(HtmlTextWriterTag.Td)
            writer.AddAttribute(HtmlTextWriterAttribute.Type, "TextBox")
            writer.AddAttribute(HtmlTextWriterAttribute.Name, Me.UniqueID & ":User")
            writer.AddAttribute(HtmlTextWriterAttribute.Maxlength, "30")
            writer.RenderBeginTag(HtmlTextWriterTag.Input)
            writer.RenderEndTag()
            writer.RenderEndTag()
            writer.RenderEndTag()
            writer.RenderBeginTag

[1] [2]  下一页

打印本文 打印本文 关闭窗口 关闭窗口