新しいスレッドのフォームからイベントを発生させる必要があります。VB.NETの新しいスレッドでイベントを発生させる
(これは関連性が高いとは思えませんが、私はフォームのWndProcサブコード内のコードからイベントを発生させています。 [などのMsgBoxなど]、その後、トラブルのすべての種類は、切断されたコンテキストで発生し、何が私は新しいスレッドで調達イベントは、問題を修正することを確認してきたではない)これは私が現在やっているものです
:。。
Public Event MyEvent()
Public Sub RaiseMyEvent()
RaiseEvent MyEvent
End Sub
Protected Overrides Sub WndProc(ByRef m As System.Windows.Forms.Message)
Dim t As New Threading.Thread(AddressOf RaiseMyEvent)
t.Start()
End Sub
良い方法がありますか?
VBのイベントは、実際にはバックグラウンドでデリゲートで構成されていると私は理解しています。新しいスレッドでイベントを発生させる方法はありますか?または、私が使用すべきより適切な方法がありますか?
を新しいスレッドでイベントを発生させる必要がありますか? –
@Matt、私の記事、イタリック体の最初の段落を読んでください。私はWndProc内でイベントを起こす必要があります。これらのイベントを処理するコードがWndProcメッセージを処理する必要がある場合、WndProcがブロックされるため、クラッシュが発生します。 – Brad