![]() |
1
3
你应该用 Dispatcher.Invoke 方法
编辑
|
![]() |
2
1
我对wpf不太了解,但我刚刚了解了一个可以为你做这项工作的后台工作人员。 http://dotnetperls.com/backgroundworker 您只需处理在任务之后引发的WorkerCompleted事件,该事件应在主线程中运行。它还可以报告进度以更新进度条。 例子:
|
![]() |
3
1
如果您只想更新一个进度条(或类似的),那么您应该在主线程的前面创建所有ui,然后使用表单的
Invoke method
(例如发送一个
我认为没有办法在线程之间共享windows窗体控件。 编辑: 好的,我现在看到这个被标记为wpf。答案仍然是相同的,但是不是在控件上调用,而是使用 Dispatcher 类(每个图形元素都包含对适当分派器的引用)。您也可以使用 BackgroundWorker 按照另一个答案的建议上课。 |
![]() |
4
0
不-那是不可能的。wpf主要是单线程的。 但是,您应该想知道为什么创建接口要花那么多时间。wpf相当快。”“普通”控件的创建不应成为瓶颈。 也许您可以优化其他对象创建;尝试分析您的应用程序。 尝试自下而上构建用户界面:最后一个操作应该是将控件添加到表单中。 |
![]() |
5
0
您可以xaml序列化ui元素,然后将它们发送回主线程。不确定在主线程中取消序列化是否比在主线程中创建更快。 |
![]() |
FranticFronk · Tkinter单选按钮在已选择时执行命令 5 月前 |
![]() |
Kumkuatte · 如何将UI元素对齐到Unity中的左侧位置 9 月前 |
![]() |
Calax · GUI不显示所有组件(C++) 10 月前 |
![]() |
trassert · python flet容器 10 月前 |
![]() |
Shady Abdulmunim · 喷气背包组合中的扫掠渐变圆形进度条 11 月前 |
![]() |
Jason Parmar · 伪OSS错误:校验和输入流计算器不支持标记 11 月前 |
![]() |
zadisk8 · 带有Q拆分器和多级选项卡的PyQt5 11 月前 |
![]() |
Patrick Visi · Zitadel日常创建服务用户 1 年前 |