知识大全 VB.NET 中的组件开发源代码剖析

Posted

篇首语:情况是在不断地变化,要使自己的思想适应新的情况,就得学习。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 VB.NET 中的组件开发源代码剖析相关的知识,希望对你有一定的参考价值。

VB.NET 中的组件开发源代码剖析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

                                                登录验证组件                                                             Imports System Security Cryptography  Imports System Text  Imports System Data  Imports System Data SqlClient    Public Class ValidatorClass Validator    Inherits System ComponentModel Component      Private username As String    Private userpwd As String      Public Property vUsername()Property vUsername() As String      Get        Return username      End Get      Set(ByVal Value As String)        username = Value      End Set    End Property      Public Property vUserpwd()Property vUserpwd() As String      Get        Return userpwd      End Get      Set(ByVal Value As String)        userpwd = Value      End Set    End Property       转换为MD5    Private Function convertMD ()Function convertMD (ByVal pwd As String) As String        Dim md As New MD CryptoServiceProvider      Dim password As Byte() = (New ASCIIEncoding) GetBytes(pwd)         转换为哈希值Byte数组      Dim mdByte As Byte() = md ComputeHash(password)       Dim mdString As String = System BitConverter ToString(mdByte)      Dim mdString As String = (New ASCIIEncoding) GetString(mdByte)      Return mdString      End Function      Public Function validate()Function validate() As Boolean         连接到Users表        Dim myConnection As New SqlConnection( server=localhost;database=TEST;Trusted_Connection=yes;user id=sa;password=; )      Dim selectAdapter As New SqlDataAdapter( select * from Users where UserName= + username + + and Password= + convertMD (userpwd) + myConnection)      Dim ds As New DataSet      Try        selectAdapter Fill(ds Users )        If (ds Tables( ) Rows Count > ) Then          Return True        Else          Return False        End If      Catch ep As SqlException        MsgBox( 连接数据库出错 )      Catch pp As Exception        MsgBox( Oh 发生了不可预料的事情在你身边 你死定了 退出吧 )      End Try    End Function  #Region 组件设计器生成的代码       Public Sub New()Sub New(ByVal Container As System ComponentModel IContainer)      MyClass New()         Windows Forms 类撰写设计器支持所必需的      Container Add(Me)    End Sub      Public Sub New()Sub New()      MyBase New()         该调用是组件设计器所必需的       InitializeComponent()         在 InitializeComponent() 调用之后添加任何初始化      End Sub       组件重写 dispose 以清理组件列表     Protected Overloads Overrides Sub Dispose()Sub Dispose(ByVal disposing As Boolean)      If disposing Then        If Not (ponents Is Nothing) Then          ponents Dispose()        End If      End If      MyBase Dispose(disposing)    End Sub       组件设计器所必需的    Private ponents As System ComponentModel IContainer       注意: 以下过程是组件设计器所必需的     可以使用组件设计器修改此过程      不要使用代码编辑器修改它     <System Diagnostics DebuggerStepThrough()> Private Sub InitializeComponent()Sub InitializeComponent()      ponents = New System ComponentModel Container    End Sub    #End Region    End Class    简介 组件其实是一段可以重用的代码 通过遵循IComponent接口的标准来实现一个组件 所以有组件都是派生于Component类 由Component类来实现IComponent接口 在组件中应正确使用函数的访问级别来控制外部对其的访问限制     只要有足够的权限就可以将组件放到自己的程序中而不用担心组件会产生多大的错误 因为组件已经经过测试的 比如说可以把一段登录的程序做成一个组件 或者把经常使用到的一些功能也做成组件 这样就可以减少开发中的错误 也可以缩短开发时间 组件之间也可以互相套用 如一个组件引用另一个组件 都是没问题 但要先在Add Reference中添加对组件的引用 在 NET中是通过把组件放在程序集中来实现的 程序集中存放著这些组件所依赖的文件信息和所在路径 因此CLR就可以通过这些信息来确定组件所需要的其他程序集的位置     ( 另外在组件设计过程中应好好利用接口来设计组件)    在VS中创建组件 选建一个Project 再从模板中选Class Library OK 接着再从Project菜单中Add Component 到些为止 组件的一个框架就呈现在眼前 平台自动继承了Component类和构造函数 可以删除原先创建类库时自动生成的Class 看应用的需要 接着就可以在组件类里写要实现的功能 最后从Build(生成)菜单中选择Build Solution(生成解决方案)来生成组件 如果生成成功的话 到应用程序的BIN目录下会看到一个DLL文件     引用组件 只要在Solution Explorer窗口中 添加对DLL的Reference就可以了     Imports loginValidator  Imports System Data  Imports System Data SqlClient    Public Class loginFormClass loginForm    Inherits System Windows Forms Form    #Region Windows 窗体设计器生成的代码       Public Sub New()Sub New()      MyBase New()         该调用是 Windows 窗体设计器所必需的       InitializeComponent()         在 InitializeComponent() 调用之后添加任何初始化      End Sub       窗体重写 dispose 以清理组件列表     Protected Overloads Overrides Sub Dispose()Sub Dispose(ByVal disposing As Boolean)      If disposing Then        If Not (ponents Is Nothing) Then          ponents Dispose()        End If      End If      MyBase Dispose(disposing)    End Sub       Windows 窗体设计器所必需的    Private ponents As System ComponentModel IContainer       注意: 以下过程是 Windows 窗体设计器所必需的     可以使用 Windows 窗体设计器修改此过程      不要使用代码编辑器修改它     Friend WithEvents lblUserPwd As System Windows Forms Label    Friend WithEvents lblUserName As System Windows Forms Label    Friend WithEvents txtUserName As System Windows Forms TextBox    Friend WithEvents txtUserPwd As System Windows Forms TextBox    Friend WithEvents btnSubmit As System Windows Forms Button    Friend WithEvents btnExit As System Windows Forms Button    Friend WithEvents Label As System Windows Forms Label    Friend WithEvents Label As System Windows Forms Label    Friend WithEvents btnCancel As System Windows Forms Button    Friend WithEvents Label As System Windows Forms Label    <System Diagnostics DebuggerStepThrough()> Private Sub InitializeComponent()Sub InitializeComponent()      Dim resources As System Resources ResourceManager = New System Resources ResourceManager(GetType(loginForm))      Me lblUserPwd = New System Windows Forms Label      Me lblUserName = New System Windows Forms Label      Me txtUserName = New System Windows Forms TextBox      Me txtUserPwd = New System Windows Forms TextBox      Me btnSubmit = New System Windows Forms Button      Me btnExit = New System Windows Forms Button cha138/Article/program/net/201311/13907

相关参考

知识大全 使用VB.NET的五个技巧之在组件中显示时间

使用VB.NET的五个技巧之在组件中显示时间  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  开发

知识大全 VB.NET中的动态代码生成技巧

VB.NET中的动态代码生成技巧  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  本文的讨论也将着

知识大全 VB.NET表单自动提交实现方案剖析

VB.NET表单自动提交实现方案剖析  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  我们曾经在一

知识大全 消息队列在VB.NET数据库开发中的应用

消息队列在VB.NET数据库开发中的应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 我们先简单

知识大全 VB.NET对象的广泛应用

VB.NET对象的广泛应用  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  代码重用简化了开发过程

知识大全 一个vb.net的用户登陆页面代码

  PrivateSubButton_Click(ByValsenderAsSystemObjectByValeAsSystemEventArgs)HandlesButtonClick  IfText

知识大全 设计模式与VB .net代码 外观模式,合成模式

设计模式与VB.net代码外观模式,合成模式  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  外观

知识大全 使用VB.net实现sql数据库的备份与恢复代码

使用VB.net实现sql数据库的备份与恢复代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!  

知识大全 VB.NET设置屏幕分辨率、颜色位数、刷新率 实例代码

VB.NET设置屏幕分辨率、颜色位数、刷新率实例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!

知识大全 VB.NET拷贝整个目录下所有子目录及文件的实例代码

VB.NET拷贝整个目录下所有子目录及文件的实例代码  以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!