簡単な Web ページの画面キャプチャ プログラムを実装しようとしています。UI スレッドでコードを使用していたときはすべて問題なく動作しているように見えましたが、非 UI スレッドからメソッドを呼び出すと、WebBrowserDocumentCompleted イベントを発生させることができなくなりました。私もこれを試しました:
System.Windows.Forms.WebBrowser wb = new System.Windows.Forms.WebBrowser();
wb.DocumentCompleted += WebBrowserDocumentCompleted;
wb.Visible = true;
wb.ScrollBarsEnabled = false;
wb.ScriptErrorsSuppressed = true;
wb.Navigate(url);
while (wb.ReadyState != System.Windows.Forms.WebBrowserReadyState.Complete)
{
Application.Current.Dispatcher.Invoke(DispatcherPriority.Background,
new Action(delegate { }));
}
プログラムは while ループに無期限にハングアップします。何か案は?