首页 > WPF 如何在子线程里传值并更新界面UI

WPF 如何在子线程里传值并更新界面UI

项目里有
MainWindow.xaml
AClass.cs 两个文件。
其中MainWindow里有一个TextBox 一个Button
其中AClass.cs下有一个Method()方法。

public class AClass
{
    public void Method()
    {
        string str; //要把这个值传到主界面并在TextBox上显示
    }
}

// MainWindow.xaml.cs 里的BUTTON事件
private void Button_Click_1(object sender, RoutedEventArgs e)
{
    AClass a = new AClass();
    Thread aTh = new Thread(new ThreadStart(a.Method));
    aTh.Start();
}

如何把 Method 里的 str 传到 MainWindow.xaml 并且在 TextBox 里显示?


跨线程修改UI线程控件的值用UI线程的Dispatcher.BeginInvoke或Invoke方法。


使用委托,或者全局变量


使用task来替代thread

【热门文章】
【热门文章】