0

次のウィンドウフォームが来ました:

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 に答える