zoukankan      html  css  js  c++  java
  • WPF Dispatcher使用

    微软在WPF引入了Dispatcher,那么这个Dispatcher的主要作用是什么呢?
    Dispatcher的作用是用于管理线程工作项队列。
    主线程负责接收输入、处理事件、绘制屏幕等工作,这样一来,UI界面是主线程创建的,因为子线程不能直接更新由主线程维护的UI界面,所有调用Dispatcher更新UI。

    实例:WPF更新UI
    方式一
    new Thread(()=>{
        this.Dispatcher.Invoke(new Action(()=>{
            //通知主线程去完成更新
        }));
    }).Start();

    方式二
    Application.Current.Dispatcher.Invoke(new Action(() => {
        Application.Current.MainWindow.Title = "我修改过的窗体标题";
    }));

    方式三:异步机制
    var task = Application.Current.Dispatcher.BeginInvoke(new Action(() => {
        Application.Current.MainWindow.Title = "我修改过的窗体标题";
    }));
    task.Completed += new EventHandler(task_Completed);
    static void task_Completed(object sender, EventArgs e)
    {
        MessageBox.Show("任务已经完成");
    }

  • 相关阅读:
    RabbitMQ管理
    vc6.0
    SystemTap
    undefined reference to `__imp_socket'
    采集小板校时
    点播播放不出来
    抓包注意事项
    下载rfc
    CLion快捷键
    rtsp vlc请求实例
  • 原文地址:https://www.cnblogs.com/sntetwt/p/11149916.html
Copyright © 2011-2022 走看看