小编Lec*_*nox的帖子

VB.NET多线程.从单独的类文件中的类调用UI控件上的调用

我已经尝试了解这几天了,并想知道这是不是很简单,我错过了或完全错了.

示例:两个文件 - TestClass.vb,myForm.vb


TestClass.vb如下所示:

Imports System.Threading

Public Class TestClass
    Private myClassThread As New Thread(AddressOf StartMyClassThread)

    Public Sub Start()
        myClassThread.Start()
    End Sub

    Private Sub StartMyClassThread()
        myForm.Msg("Testing Message")
    End Sub
End Class
Run Code Online (Sandbox Code Playgroud)

myForm.vb是一个基本表单,其中包含一个列表框控件和一个分别名为Output和StartButton的按钮控件.表格背后的代码如下:

Public Class myForm
    Private classEntity As New TestClass

    Private Sub StartButton_Click(ByVal sender As System.Object, _
                                  ByVal e As System.EventArgs) _
                              Handles StartButton.Click
        Msg("Start Button Pressed")
        classEntity.Start()
    End Sub

    Delegate Sub MsgCallBack(ByVal mesg As String)

    Public Sub Msg(ByVal mesg As String)
        If Output.InvokeRequired Then
            MsgBox("Invoked")
            Dim d As New …
Run Code Online (Sandbox Code Playgroud)

vb.net user-interface multithreading .net-4.0 visual-studio-2010

6
推荐指数
1
解决办法
6235
查看次数