none
怎样从非UI线程回到UI线程来更新页面? RRS feed

  • 问题

  • 怎样从非UI线程回到UI线程来更新页面?

    使用Deployment.Current.Dispatcher.BeginInvoke()可以吗?

    2012年4月16日 14:20

答案

  • public delegate void DelegateStandardPattern(); //先声明一个委托
    private void SetTextStandardPattern()
    {
        if (this.InvokeRequired)       //判断是否是UI线程
        {
            this.Invoke(new DelegateStandardPattern(SetTextStandardPattern));
            return;
        }
        this.text = "New Text";
    }

    这是标准解决UI与非UI线程切换问题的解决办法

    适用于C# 1.0, 2.0, 3.0, 3.5, Standard and Compact Framework


    给我写信: QQ我:点击这里给我发消息

    2012年4月16日 16:14
  • 使用Invoke, WPF/SL的话用线程Dispatcher的Invoke。

    BeginInvoke是异步执行的,Invoke同步执行。


    --!

    2012年4月17日 3:57

全部回复