我正在尝试创建一个WPF用户控件,它需要很长时间才能启动。因此,我想在单独的STA线程中创建用户控件,并将其添加到主UI线程中的StackPanel内。但是,由于在单独的线程中创建了用户控件,因此它不允许。感谢专家的帮助!感谢。
答案 0 :(得分:0)
由于自定义控件正在执行该过程,因此请在单独的线程上执行该过程。创建一个内部INotifyProperty属性作为可见性标志,开始时不可见。当完成该过程后,它会更改标志,并且控制在堆栈面板中变得可见,一切都很好。
这是处理长时间运行操作的标准做法,远离gui而不必处理STA线程问题。