Vb.net 如何从多个类订阅单个事件?

Vb.net 如何从多个类订阅单个事件?,vb.net,events,Vb.net,Events,我正在为我正在制作的一场足球比赛创建一个选秀室,并且有好几门课与之相关 一旦当前团队做出选择,DraftPick类将负责发起事件。但是,还有多个其他类也需要“知道”何时触发此事件。Draft类需要知道,以便可以从可用球员列表中删除该球员,重新启动时钟并在时钟上更新当前团队。DraftNews类需要了解此事件,以便可以使用拾取信息更新draft ListView中的,DraftTicker类需要了解此事件,以添加刚刚在屏幕底部滚动的draft ticker中进行的选择 我在VB.Net中工作,所以

我正在为我正在制作的一场足球比赛创建一个选秀室,并且有好几门课与之相关

一旦当前团队做出选择,DraftPick类将负责发起事件。但是,还有多个其他类也需要“知道”何时触发此事件。Draft类需要知道,以便可以从可用球员列表中删除该球员,重新启动时钟并在时钟上更新当前团队。DraftNews类需要了解此事件,以便可以使用拾取信息更新draft ListView中的,DraftTicker类需要了解此事件,以添加刚刚在屏幕底部滚动的draft ticker中进行的选择

我在VB.Net中工作,所以它不像在C#中那样简单。但是,我认为最简单的方法是共享pickmake事件,这样其他类就可以通过
DraftPick.pickmake()
简单地访问事件,并使用
AddHandler
。我想知道是否有一个既定的“方法”来做这件事,或者我正在考虑做的事情是否可以


如果您有任何建议,我将不胜感激,这是我第一次需要多个班级来听一个活动…

在VB中,它和在C#中一样简单。在C#中使用“+=”来处理对象事件的地方,在VB中使用
AddHandler
。这两者完全相等。好的,谢谢你。那么,我计划的方法是否能正常工作,或者是否有更好的方法来实现这一点?就哪些对象处理事件而言,基于我对您的项目的有限知识,我听起来还行。不过,我不确定是否要声明事件
共享
。如果要创建
DraftPick
类的实例,则事件应为实例成员。如果有多个实例,那么
共享的
事件就不会真正起作用;如果没有多个实例,并且您认为
共享的
方法是个好主意,那么类可能应该是一个单例。我能不能让DraftPick类不可继承(用C#密封)?该类将只有一个实例。这将是一种滥用。
MustInherit
/
abstract
的要点是定义一个类,其唯一目的是充当其他类型的基类。为什么不做正确的事呢?如果不想创建任何类型的实例,请使用C#中的静态类或VB中的模块。如果你想创建一个实例,那么就用这两种语言实现singleton模式。它在VB中和在C#中一样简单。在C#中使用“+=”来处理对象事件的地方,在VB中使用
AddHandler
。这两者完全相等。好的,谢谢你。那么,我计划的方法是否能正常工作,或者是否有更好的方法来实现这一点?就哪些对象处理事件而言,基于我对您的项目的有限知识,我听起来还行。不过,我不确定是否要声明事件
共享
。如果要创建
DraftPick
类的实例,则事件应为实例成员。如果有多个实例,那么
共享的
事件就不会真正起作用;如果没有多个实例,并且您认为
共享的
方法是个好主意,那么类可能应该是一个单例。我能不能让DraftPick类不可继承(用C#密封)?该类将只有一个实例。这将是一种滥用。
MustInherit
/
abstract
的要点是定义一个类,其唯一目的是充当其他类型的基类。为什么不做正确的事呢?如果不想创建任何类型的实例,请使用C#中的静态类或VB中的模块。如果您想创建一个实例,那么就用这两种语言实现singleton模式。