重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【終了しました】教えて!goo新規会員登録

マルチスレッド機能であるBackgroundWorkerを利用してプログラムを書いていたのですが
DoWorkからコントロールへのアクセスが出来ません。
どうすればコントロールへアクセスできるのでしょうか?
誰かお詳しい方、ご教授願います。

Private Sub back1_DoWork(ByVal sender As System.Object, ByVal e As System.ComponentModel.DoWorkEventArgs) Handles back1.DoWork

    textbox1.text="処理中とか表示したい"

End Sub

A 回答 (2件)

    • good
    • 0
この回答へのお礼

まさに求めていた内容です。
ありがとうございます。

いろいろ検索してみても
ぴったりくる情報が出てこなかったのでありがとうございます。

お礼日時:2011/09/22 15:53

BackgroundWorkerの処理を開始するコードは記述しましたか?



たとえばボタンを押して処理を開始するのであれば

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

back1.RunWorkerAsync()

End Sub

のように処理開始の記述が必要です
もしすでに記述してあるのであれば
記述してある場所や記述したコードに問題があることも考えられます
一度チェックしてみてください
    • good
    • 0
この回答へのお礼

別スレッドで処理を走らせていると
コントロールにアクセスできないみたいです。

お礼日時:2011/09/22 15:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!