我有一个控制台应用程序,我想在其中显示wpf窗口:
ths = new ThreadStart(() =>
{
window = new wpf_lib.Container();
System.Windows.Application app = new Application();
app.Run(window);
});
th = new Thread(ths);
th.TrySetApartmentState(ApartmentState.STA);
th.Start();
但是,如何从控制台应用程序中的任何方法获取wpf窗口方法和属性的访问权限?
答案 0 :(得分:0)
您有两种选择,首先是您最简单的选择:
使用System.Windows.Application.MainWindow方法访问Window的属性和方法。
第二步:将属性/方法添加到返回所需Container
对象的Window
类中。这可能是也可能是不可能的,主要取决于您是否可以访问该类的源代码。
如果遇到有关线程访问的异常,请使用相应WPF对象的Dispatcher
。有关详细信息,请参阅this question。