2

別のワーカースレッドからWindowsフォームのメインUIスレッドへの参照を取得する方法はありますか?

このようなもの:

public void FormLoad()//we are in Main UI Thread
    {
        Thread backThread = new Thread(DoWork);
        backThread.Start();

    }
    public void DoWork()
    {
        //get Main Thread instance
        //do some work
    }

アップデート

現在のスレッドを取得するためのThread.CurrentThreadのようなメインスレッドへの参照を取得するための静的プロパティまたはクラスがあるかどうかに興味があります。

4

4 に答える 4

1
Thread MainThread=null;//for reference
public void FormLoad()//we are in Main UI Thread
    {
        MainThread=Thread.CurrentThread;//main thread reference
        Thread backThread = new Thread(DoWork);
        backThread.Start();

    }
    public void DoWork()
    {
        //get Main Thread instance
        //do some work
    }

これはうまくいくはずです!!!

于 2013-02-05T13:10:27.580 に答える
1

いつでも ParameterizedThreadStart を使用してスレッドを開始し、パラメーターをスレッドに送信できます。これはオブジェクトであるため、呼び出しスレッドへの参照を渡すことができます。

于 2013-02-05T13:11:52.130 に答える