异步初始化组件

InitializeComponent asynchrounously

是否可以实现异步InitializeComponent?否则我可以异步加载我的 WPF 组件吗?更具体地说,我目前正在用 WPF 开发一个产品,我注意到当我有性能要求时,图形组件(某些组件)的加载时间相当长。

如果你在UI线程上创建一个组件,那么没有办法把InitializeComponent放在另一个线程上,但是可以在同一个线程中使用Dispatcher.BeginInvoke作为异步调用如下:

Dispatcher.BeginInvoke(new Action(() =>InitializeComponent()));