HTMLページに適用されたCSSスタイルに関する情報を取得する必要があります。私はAxWebBrowserを使用し、IHTMLDOMNodeを繰り返します。私は必要なすべてのデータを取得し、アプリケーションにコードを移すことができます。問題は、この部分がバックグラウンドワーカーの中で実行されていることです。コントロールをインスタンス化しようとすると例外が発生します。シングルスレッドアパートメント - ActiveXコントロールをインスタンス化できません
AxWebBrowser browser = new AxWebBrowser();
ActiveX control '8856f961-340a-11d0-a96b-00c04fd705a2' cannot be instantiated
because the current thread is not in a single-threaded apartment.
AxWebBrowser以外の方法はありますか?
ありがとう、素晴らしいこれが動作しています。もう1つの質問/問題。私が使用しているクラスは単なるクラスであり、AxWebBrowserはthis.Controls()に追加する必要があるように見えます。コントロールを偽装する方法はありますか?それとも、Formを分けておく必要がありますか? –
@ martin.malekそれを偽造する素晴らしい方法はありません。最善の策は、新しいフォームを作成することです。 – JaredPar
こんにちは、コードはt.SetApartmentState(ApartmentState.STA)でなければなりません。 –