Vb.net 如何使用模块从类库引发事件以形成表单?

Vb.net 如何使用模块从类库引发事件以形成表单?,vb.net,events,module,class-library,Vb.net,Events,Module,Class Library,我有一个应用程序,它从模块中的一个子模块开始,做一些事情,然后加载表单 但它不起作用:/ 这里我们执行dBase.AddTemporalFilepath module.vb Public dBase As New Core.clsDatabase Public Sub Main() FurBase.Directory = My.Application.Info.DirectoryPath If appMutex.WaitOne(TimeSpan.Zero, True) Th

我有一个应用程序,它从模块中的一个子模块开始,做一些事情,然后加载表单

但它不起作用:/

这里我们执行dBase.AddTemporalFilepath

module.vb

Public dBase As New Core.clsDatabase

Public Sub Main()

    FurBase.Directory = My.Application.Info.DirectoryPath

    If appMutex.WaitOne(TimeSpan.Zero, True) Then
        ShowUploader()
    End If

    Dim returnValue As String()

    returnValue = Environment.GetCommandLineArgs()

    If returnValue.Length > 1 Then
        If My.Computer.FileSystem.FileExists(returnValue(1).ToString) Then
            dBase.AddTemporalFilepath(returnValue(1).ToString)
        End If
    End If

End Sub

Private Sub ShowUploader()
    Application.EnableVisualStyles()
    Application.Run(frmUploader)
End Sub
我们引发事件TempFilepathAdded

clsDatabase.vb

Public Class clsDatabase

Public Event TempFilepathAdded()

Public Function AddTemporalFilepath(ByVal filepath As String)
...
        RaiseEvent TempFilepathAdded()
...
End Function

End Class
我们去看比赛

form.vb

Private Sub form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

    AddHandler dBase.TempFilepathAdded, AddressOf TempFilepathAddedHandler

End Sub

Private Sub TempFilepathAddedHandler()
    MsgBox("Event raised")
End Sub
有什么想法吗

更多信息:

窗体关闭时引发事件。

行“Application.Run(frmUploader)”暂停程序,直到窗口关闭。基本上,它劫持了主线程来处理诸如用户单击按钮之类的事情

通常,您的主要功能应如下所示:

  • 设置
  • 应用程序。运行
  • 清理

  • 很抱歉,似乎是时候重新组织代码了。

    您似乎在创建表单之前引发了事件。它永远不会看到任何事件。我想这就是“不工作”的意思。我已经解决了这个问题,但仍然不工作。我将放弃猜测“不工作”的意思。