WPF 动态添加UI控件 界面假死 怎么办?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WPF 动态添加UI控件 界面假死 怎么办?相关的知识,希望对你有一定的参考价值。

大家好! 最近用WPF做一个初始化程序,需要动态的在界面上添加控件,这个添加控件的程序运行需要的时间比较长,导致界面假死 请问如果我想让这个添加过程动态地显示出来应该用什么方法呢? BackgroundWorker我试了不行,使用Action开多线程还是不行...还是... 大家好! 最近用WPF做一个初始化程序,需要动态的在界面上添加控件,这个添加控件的程序运行需要的时间比较长,导致界面假死 请问如果我想让这个添加过程动态地显示出来应该用什么方法呢? BackgroundWorker我试了不行,使用Action开多线程还是不行...还是我使用的方法不正确呢? 谢谢大家了! 展开

参考技术A 对于UI的修改,你还是需要用UI线程去做,否则会报跨线程错误云云
你要分析一下你这个控件到底耗时在哪里,基本上显示过程不会耗很多,应该是你在获取生成该控件所用的数据耗时比较多,你这个时候可以单开线程去处理,并让UI线程显示正在处理或正在加载之类的,当那个线程已经完成了控件的生成以后,再传递给UI线程,让他把控件显示出来就行了,
如果你要加入动画,同样也是由UI线程去做,至于怎么实现,那就是动画那一方面的应用了

wpf中怎么为treeview动态添加子菜单

参考技术A 这个可以实现右键菜单的添加和删除的wpf做的,我传给你

以上是关于WPF 动态添加UI控件 界面假死 怎么办?的主要内容,如果未能解决你的问题,请参考以下文章

wpf 动态添加控件和使用

wpf 动态添加滚动条

wpf 如何动态向tabitem添加控件

wpf中动态添加的自定义控件过宽,不能完全显示,怎么办

C# WPF后台代码动态添加控件

C# WPF后台动态添加控件(经典)