我爱Aspx >> VB.Net >> VB.net是怎样做到的(四、五)VB.net是怎样做到的(四、五)
et是怎样做到的(三)——Handles和WithEvents
VB除了可以用C#那样的方法来处理事件响应以外,还有从VB5继承下来的独特的事件处理方式——WithEvents。
我喜欢称这种事件处理方式为静态的事件处理,书写响应事件的方法时就已经决定该方法响应的是哪一个事件,而C#则是在代码中绑定事件的。比如下面这个最简单的例子:
Public Class HandlerClass
Public WithEvents MyObj As EventClass
Private Sub MyObj_MyEvent(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyObj.MyEvent
MsgBox("hello")
End Sub
Public Sub New()
MyObj = New EventClass
End Sub
End Class
代码中用到的EventClass是这样的:
Public Class EventClass
Public Event MyEvent As EventHandler
Protected Overridable Sub OnMyEvent(ByVal e As EventArgs)
RaiseEvent MyEvent(Me, e)
End Sub
Public Sub Test()
OnMyEvent(New EventArgs)
End Sub
End Class
我们来复习一下,这段代码隐式地给EventClass编写了两个方法——Add_MyEvent(EventHandler)和Remove_MyEvent(EventHandler),实际上任何使用事件的上下文都是通过调用这两个方法来绑定事件和解除绑定的。C#还允许你书写自己的事件绑定/解除绑定的代码。
【我对这篇文章有话说?】
VB.NET是怎样做到的(五、六)[05-20]
VB.NET实现PhotoShop的流动选取框[05-20]
VB.NET是怎样做到的(七)——可..[05-20]
VB.NET是怎样做到的(八)——On..[05-20]
使用VB.NET加密文件[05-20]
如何在asp.net页面上放置的控件上..[05-20]
如何在VS.NET/C# Builder开发的网..[05-20]
VB.Net学习笔记(前言)[05-20]
VB.Net学习笔记(基础概念和语法..[05-20]
VB.Net学习笔记(变量生存期和赋..[05-20]
VB.NET是怎样做到的(五、六)[05-20]
VB.NET实现PhotoShop的流动选取框[05-20]
VB制作的可以限制输入的文本框[05-20]
可以限制中文输入的文本框[05-20]
VB.NET是怎样做到的(七)——可..[05-20]
VB.NET是怎样做到的(八)——On..[05-20]
使用VB.NET加密文件[05-20]
DataGrid常见解决方案(三)--在Da..[05-20]
引言:Kent Beck 曾经说过“我只..[05-20]
如何在asp.net页面上放置的控件上..[05-20]