WPF 后台线程 触发 界面修改

heureuy 2021-03-22 01:52:46
请问一个关于WPF 后台线程 触发 界面修改的问题:

我在后台有一个线程一直连着服务器,等待下载数据。
当收到数据为:10 的倍数时候,自动触发界面的一个Textblock,让它显示数据。
这个时候,要怎样使用事件触发?
或者有更好的方法吗?

谢谢!!
...全文
1935 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq14923349 2021-03-26
  • 打赏
  • 举报
回复 1
1用委托 2 mvvm
先展示下效果 https://pan.quark.cn/s/3bfecdd1b430 在Windows Presentation Foundation(WPF)应用程序的设计过程中,有时需要在非主线程的上下文中展示窗口界面,以此防止主线程的运行受到阻碍,从而优化用户的使用感受。 主题“在独立线程中呈现WPF窗口”及其相关说明揭示了这一核心思想,它关联到并发处理技术以及WPF线程操作安全性的特殊考量。 1. **WPF线程操作**: WPF软件系统默认在主线程(即用户界面线程)上执行,负责管理所有的界面刷新和用户交互事件。 主线程作为程序执行的起点,与Windows操作系统直接进行通信,确保用户界面的及时响应和同步运作。 然而,若长时间运行的作业在主线程上执行,将导致应用程序失去响应能力,因此需要在其他线程(即后台线程)上处理这些任务。 2. **并发处理基础理论**: - **线程**:线程是程序运行的执行单元,一个进程能够包含多个线程。 - **主线程与辅助线程**:主线程主要承担界面更新的职责,而辅助线程则用于执行需要较长时间完成的任务。 - **线程间数据交互**:在并发处理环境中,数据的共享和交流是必不可少的,可以通过事件触发、委托机制或线程同步手段来实现。 3. **线程操作的安全性**: WPF中的用户界面组件只能由其创建的线程(即用户界面线程)进行操作。 若尝试在其他线程上更改界面组件,将会引发异常,这是因为WPF遵循用户界面线程的约束,以维护界面的统一性。 4. **调度器对象**: - WPF的调度器对象是线程的分配管理者,它负责在适当的线程上执行操作。 每个用户界面组件都有一个对应的调度器,可以通过`Dispatcher.BeginInvoke`或`Dis...

8,757

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧