在我的WPF应用程序中,我需要从几个文本框中读取文本。因为代码在与UI不同的线程中运行,所以我需要使用Dispatcher.invoke()
。
目前我正在使用一个工作正常的文本框,但现在我需要所有文本。我是否需要为每个文本框编写Dispatcher.invoke
或者是否有办法编写函数,以便传入文本框控件引用并返回文本?
答案 0 :(得分:0)
您可以从同一个Invoke调用中的所有TextBox字段中获取文本。
public MainWindow()
{
InitializeComponent();
Thread thread = new Thread(new ThreadStart(this.ThreadFunc));
thread.Start();
}
private delegate void InvokeDelegate();
private void ThreadFunc()
{
Dispatcher.Invoke(new InvokeDelegate(() =>
{
Debug.WriteLine(this.textBox1.Text + this.textBox2.Text);
}));
}
没有理由要进行多次通话。