2017-09-21 3 views
0

私はサービスとして動作するWinFormsアプリケーションを持っています(実際のUIはありません)が、WinFormsアプリケーションです。
このアプリケーションでは、ElementHostを持ち、elementHostにはWPFグリッドがあります。私はこのコードを持っている私のクラスの一つで
:私が得るWpfグリッドエラーエラーをホストするwinformsを呼び出す

Dim frm1 As New frmHostWpfGrid '->HERE I get the error 

frm1.WpfGrid.WpfGridControl.BeginDataUpdate() 
frm1.WpfGrid.WpfGridControl.ItemsSource = Nothing 
frm1.WpfGrid.WpfGridControl.RestoreLayoutFromStream(LayoutStream) 
frm1.WpfGrid.WpfGridControl.ItemsSource = mdtData 
frm1.WpfGrid.WpfGridControl.EndDataUpdate() 

エラーは次のとおりです。
多くのUIコンポーネントがこれを必要とするため、呼び出し元のスレッドが、STAである必要があります。
私はWinFormsフォームとグリッドで試してみましたが、この問題はありませんでした。

PS1。私は
PS2という形式を表示したくないことに注意してください。フォームなしで直接WPFグリッドを塗りつぶしてみましたが、同じエラーが発生しました

答えて

-2

UI以外のスレッドでUIオブジェクトを作成しようとしています。 WPF要素のいくつかを設定する必要がある場合は、フォームの初期化コードが表示されずにエラーの原因を正確に伝えるのは難しいです。

正確な答えを得るために、frmHostWpfGridの詳細を知る必要があります。

+0

私のフォームは単なるwinformsで、elementHostとelementHostはwpfグリッドです。その背後にコードはありません – Nianios

関連する問題