我已经尝试过很多方法来获取窗口的静态引用,以在程序中的不同类中访问其所有成员。因此,需要一个静态引用。
我想要的是像
在WinForms中,我通常会在Program.cs中声明我的静态表单,但是在WPF中,这似乎不起作用,并且使用自定义的“App.xaml” ApplicationDefinition。
我该如何做呢?
注意:我已经尝试了很多方法:直接调用新窗口(即
每当我尝试创建一个窗口“通过代码”,而不是由默认的XAML ApplicationDefinition的StartupUri时,都会出现以下异常:
“因为许多UI组件都需要它,所以调用线程必须是STA。”
我想要的是像
Program.Window1
这样的东西,其中Core
是静态的,而MyWindow
是它的一个静态成员。在WinForms中,我通常会在Program.cs中声明我的静态表单,但是在WPF中,这似乎不起作用,并且使用自定义的“App.xaml” ApplicationDefinition。
我该如何做呢?
注意:我已经尝试了很多方法:直接调用新窗口(即
Program.Window1 = new Window1()
)不起作用,因为我得到了一些线程无效异常。据我所知,只有ApplicationDefinitions可以在WPF中启动窗口。每当我尝试创建一个窗口“通过代码”,而不是由默认的XAML ApplicationDefinition的StartupUri时,都会出现以下异常:
“因为许多UI组件都需要它,所以调用线程必须是STA。”