0

我得到了以下Windows窗体:

if (richTextBoxReceive.InvokeRequired)
            {
                richTextBoxReceive.Invoke(new MethodInvoker(()=>
                    richTextBoxReceive.AppendText(string.Format("{0}\n\r", msg))));
            }
            else
            {
                richTextBoxReceive.AppendText(string.Format("{0}\n\r", msg));
            }



 i am using this code in WPF aplication and when i replace whit 

 if (richTextBoxReceive.Dispatcher.CheckAccess())
            {
                richTextBoxReceive.Dispatcher.Invoke(new MethodInvoker(()=>
                    richTextBoxReceive.AppendText(string.Format("{0}\n\r", msg))));
            }
            else
            {
                richTextBoxReceive.AppendText(string.Format("{0}\n\r", msg));
        }

我收到 3 个错误:

1)错误:WpfApplication1.MethodInvoker 不包含采用 1 个参数的构造函数

2)错误:参数 1:无法从 'WpfApplication1.MethodInvoker 转换为 System.Delegate

3) 错误:System.Windows.Threading.Dispatcher.Invoke(System.Delegate, params object[]) 的最佳重载方法匹配有一些无效参数

我是 WPF 的新手......我希望我没有提出任何愚蠢的问题,如果你有解决我的问题的方法,请帮助我,非常感谢!

4

1 回答 1

3
richTextBoxReceive.Dispatcher.Invoke((Action)(()=> ...));
于 2013-08-08T17:03:12.020 回答