【WPF】调用线程必须为STA,因为许多UI组件都需要
发布日期:2021-10-01 22:20:21
浏览次数:14
分类:技术文章
本文共 666 字,大约阅读时间需要 2 分钟。
前言
在进行WPF界面跳转时,当我登陆完成后,需要跳转到主界面,遇到了一下这个问题:调用线程必须为STA,因为许多UI组件都需要, 困恼了小编半天。终于自己敢去尝试,解决了。解决办法:
在登陆结果处理时,加入Dispatcher,Dispatcher的作用是用于管理线程工作项队列,类似于Win32中的消息队列,Dispatcher的内部函数,仍然调用了传统的创建窗口类,创建窗口,建立消息泵等操作。可以参考学习一下。
////// 登录结果处理 /// /// private void HandleLoginResult(NIM.NIMLoginResult result) { DemoTrace.WriteLine(result.LoginStep.ToString()); App.Current.Dispatcher.Invoke((Action)(() => { MessageBox.Show("登录成功"); MainWindow windows = new MainWindow(); this.Hide(); windows.Show(); })); }
总结: 勇于尝试,不断总结,要学习的东西很多很多。
转载地址:https://blog.csdn.net/j15533415886/article/details/80549978 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!
发表评论
最新留言
第一次来,支持一个
[***.219.124.196]2024年04月19日 02时07分55秒
关于作者
喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
以练代学设计模式 -- FTP文件管理项目
2019-04-27
FTP文件管理项目(本地云)项目日报(十)
2019-04-27
学以致用设计模式 之 “组合模式”
2019-04-27
我用过的设计模式(7)--享元模式
2019-04-27
MySQL数据库从入门到实战应用(学习笔记一)
2019-04-27
MySQL数据库从入门到实战应用(学习笔记二)
2019-04-27
种树:二叉树、二叉搜索树、AVL树、红黑树、哈夫曼树、B树、树与森林
2019-04-27
【C++】攻克哈希表(unordered_map)
2019-04-27
转:【答学员问】- 该如何根据岗位学习相关技能
2019-04-27
转:【答学员问】有什么经验教训,是你在面试很多次之后才知道的?
2019-04-27
消息队列:解耦、异步、削峰,现有MQ对比以及新手入门该如何选择MQ?
2019-04-27
【奇技淫巧】-- 三角形最小路径和
2019-04-27
【小技巧】argc和argv的用法
2019-04-27
学不下去了怎么办?
2021-06-30
二叉树的前中后序遍历(迭代法)(带动画)
2021-06-30
【小技巧】【XShell】【Xftp】Windows桌面与Linux虚拟机互传文件
2021-06-30
【redis入门】Centos下安装redis
2021-06-30
【redis入门】redis安装后相关知识串讲
2021-06-30
【redis】来吧,展示一下redis 发布-订阅模式
2021-06-30