博客
关于我
Wpf 多线程修改UI示例:
阅读量:661 次
发布时间:2019-03-15

本文共 564 字,大约阅读时间需要 1 分钟。

1.Wpf 多线程修改UI示例:

//启动线程修改UI,抛出异常ThreadPool.QueueUserWorkItem((q) =>{    button.Content = "张三";}, null);

解决方案:使用Dispatcher.BeginInvoke+委托方式,修改UI

将修改UI的代码封装在委托中

//启动线程处理Thread thread1 = new Thread(UpdateBtn);thread1.IsBackground = true;//设置为后台线程,当主线程结束后,后台线程自动退出,否则不会退出程序不能结束thread1.Start();

复制代码

//线程方法,修改Button内容private void UpdateBtn(){    int i = 0;    while (true)    {        i++;        Action action1 = () =>        {            button.Content = i;        };        button.Dispatcher.BeginInvoke(action1);        // 如果不设置等待,整个程序死循环        Thread.Sleep(500);    }}

复制代码

转载地址:http://qxxmz.baihongyu.com/

你可能感兴趣的文章
MySql中关于geometry类型的数据_空的时候如何插入处理_需用null_空字符串插入会报错_Cannot get geometry object from dat---MySql工作笔记003
查看>>
mysql中出现Incorrect DECIMAL value: '0' for column '' at row -1错误解决方案
查看>>
mysql中出现Unit mysql.service could not be found 的解决方法
查看>>
mysql中出现update-alternatives: 错误: 候选项路径 /etc/mysql/mysql.cnf 不存在 dpkg: 处理软件包 mysql-server-8.0的解决方法(全)
查看>>
Mysql中各类锁的机制图文详细解析(全)
查看>>