質問: お世話になります。 現在、Visual Studio 2008を使用し、vb.netにてWindowsアプリケーションの開発をしております。 その中でWindowsフォームからボタンをクリックするとWPFで作成したフォームまたはユーザーコントロールを 呼び出そうとしているのですが、エラーが表示されうまくいきません。 試しに、新規でプロジェクトを作成し、Form1とForm2を準備し、更にWPFのユーザーコントロール(適当にボタンが貼ってあるもの)を作成し、 そのユーザーコントロールをForm2に貼り付け、Form1に貼ってあるボタンをクリックすると ユーザーコントロールが貼り付けられたForm2を表示するという簡単なプログラムを作成してみました。 この場合は問題なくForm1からForm2が表示されました。 しかし、元々別で作成しましたForm(ラベルやボタンなど何個も貼り付けてある画面)にボタンを設け、 そのボタンをクリックすると上記のForm2を表示するという同様のプログラムを作成したのですが、 子の場合はFOrm2が表示されず、以下のエラーが表示されてしまいます。 「呼び出しスレッドは、多数の UI コンポーネントが必要としているため、STA である必要があります。」 色々と調べてみたものの納得行くような原因が見つからず、解決方法もわからず、行き詰っておる状況でございます。 また、こちらで質問させて頂く上でどういった情報を記載するべきかもわからない状況で、 先ずは現状を記載させて頂きました。 この場合、どのようなことが原因と考えられますでしょうか。 宜しくお願い致します。
回答: 今回の原因は、64bitで動作するようにとビルド時のターゲットCPUを当初「x64」で実施しておりましたが、 WPFのことで色々調べていたところ「x86」で実施するのがよいということがわかったのですが、 参照していた他のdllも同様に「x86」でビルドしたところエラーが表示されることなく動作しましたので、 解決とさせていただきました。 Zuishinさん、色々とアドバイスを頂き、ありがとうございました。