如果我有这样的一个事件:关于处理自定义事件
' <summary>
' Event raised when conversion progress changes.
' </summary>
Public Shared Event PercentDone(ByVal percent As Integer)
Sub(...)
CoreConverter.StartInfo.FileName = CoreConverter_Location
CoreConverter.Start()
While Not CoreConverter.HasExited
If ChrW(CoreConverter.StandardOutput.Read) = "*" Then
progress += 1
RaiseEvent PercentDone(progress)
End If
End While
CoreConverter.Close()
RaiseEvent Exited()
End sub
我怎么能写在其他类(例如,在默认Form1类)的事件处理程序,因为这:
Sub Converter_Progress(Progress As Integer) Handles CoreConverter.PercentDone
' Some code...
End Sub
...而不是手动添加处理类似这样的东西:
AddHandler CoreConverter.PercentDone, AddressOf Converter_Progress
三江源,但后来就没有办法做没有实例化类,我的类没有IDisposable,我知道如何创建一个Dispose过程,但我不知道的是,如果在这种情况下是必要的,因为我需要实例化类来处理事件,因为我想。和其他问题,如果我没有问太多,我已经遵循了关于事件创建的指示,但是“Nothing”的值对于“e”变量是正确的,只是我没有更多的要通过比进度值,所以...我在这里提出了一个“没有”:RaiseEvent PercentDone(progress,Nothing) – ElektroStudios
你不需要立即实例化一个对象作为声明的一部分。你可以简单地声明变量'WithEvents',最初将它设置为'Nothing',然后你可以将它设置为在以后引用任何你想要的对象。您可以随时更改其引用的对象,但显然它一次只能引用一个对象。 –