[VB.NET]困扰我几天的问题..一直想不出~~关于VB.NET的Event~~~~急~~~~~~~~!!!

本文探讨了在VB.NET中如何动态地为多个不确定数量的MyClass实例注册OnStart事件,并通过EventStart方法处理这些事件。提供了使用AddHandler进行注册的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

VB.NET源码-156个实用实例哦…… <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>
困扰我几天的问题..一直想不出~~关于VB.NET的Event~~~~急~~~~~~~~!!!
有一个类
Public Class MyClass
Public Event OnStart(ByVal str As String)
Private Sub Start()
RaiseEvent OnStart( "abc ")
End Sub
End Class

有一个窗体
Dim WithEvents mc As MyClass
Private Sub EventStart(ByVal str As String) Handles mc.OnStart
''代码段
End Sub


1.VB语法规定..要将变量声明时写上 "WithEvents "才可以在方法后面写上Handles mc.OnStart
2.当我运行Start()的时候~就会触发OnStart事件~运行EventStart()方法

我的问题是....
在窗体代码里面,需要动态New出N个MyClass,有多少个不确定,要将EventStart都注册到每个MyClass的OnStart事件~
但现在只能写死mc~~我总不能写上N个变量(mc1,mc2,mc3....)~
那我应该怎么写才好呢..??
请各位提提意见`~谢谢!!
__________________________________________________________________________
如果不能使用循环处理,那就只好一个个的写了。
__________________________________________________________________________
如果是动态窗体实例的话可以创建实体后释放,这样就不用一一注册了。至于那么多的窗体实例,感觉程序思路不是很完善。
__________________________________________________________________________
可以在一个sub里这么写啊

dim mc as new myclass
addhandler mc.onstart,addressof eventstart
mc.start

其中eventstart为窗体中一个方法。
__________________________________________________________________________
支持楼上用AddHandler
__________________________________________________________________________
謝謝 wzuomin()
結帖給分!~
__________________________________________________________________________
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值