我有一个充当服务的 WinForms 应用程序(因此没有实际的 UI),但它是一个 WinForms 应用程序。
在这个应用程序中,我有一个具有 ElementHost 的表单,在 elementHost 中我有一个 WPF 网格。
在我的一门课中,我有以下代码:
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()
我得到的错误是:
调用线程必须是 STA,因为许多 UI 组件都需要这个。
当我尝试使用 WinForms 表单和网格时,我没有遇到这个问题。
PS1。请注意,我不想显示表单
PS2。我试图在没有表单的情况下直接填充 WPF 网格,我得到了同样的错误