:
あなたが出力したい文字列を使用してイベントを発生させるコードを変更したほうが良いでしょう。その後、UIでそのイベントのハンドラを追加し、ハンドラでテキストフィールドを更新します。 StringEventArgs
を送信するためのメッセージをラップEventArgs
に基づくクラスです
public event EventHandler<StringEventArgs> Process_Message;
を:あなたの処理クラスでは、このようなコードを追加し、イベントを宣言する
。
あなたの処理クラスでは、このようなコードを追加するイベントを発射する:
Process_Message(this, new StringEventArgs(message));
をあなたのUIクラスでメッセージハンドラをアタッチするには:
process.Process_Message += Process_Message;
はこのような何かを追加するイベントを処理するにはあなたのUIクラスのコード:
private void Process_Message(object sender, StringEventArgs e)
{
Action action =() => UpdateStatus(e.Message);
{
Dispatcher.Invoke(System.Windows.Threading.DispatcherPriority.Normal, action);
}
else
{
action();
}
}
あなたはUとしてスレッドテストを行う必要があります私は別のスレッドから更新することはできません。その後
UpdateStatus
方法:
private void UpdateStatus(string message)
{
statusTextBox.Text = message;
}
明らかにあなたがあなたのアプリケーションに適切であるように、物事の名前を変更する必要があります。
MSDNのイベントを参照してください。EventArgs
コンソール出力をテキストボックスにリダイレクトする理由を教えてください。診断?ロギング? – flq
別の質問で別の質問をしてください。 :) –