2017-08-14 12 views
0

私はC#コードのいくつかの場所をコンソールに出力します。いくつかはConsole.Writelineを使用し、一部はSystem.Diagnostics.ConsoleTraceListenerなどのTraceListenersを使用します。WPF TextBoxでコンソール出力全体をコピーしますか?

今、すべての出力をWPFテキストボックスに表示します。 コンソール出力1:1を何らかの形でTextBoxにバインドすることはできますか?

また、出力をtextbox.textに追加するには、TraceListenersまたはConsole.Writelineの1回の呼び出しごとに変更する必要がありますか?

+1

[コンソールの出力を傍受することはできますか?](https://stackoverflow.com/questions/6024172/is-it-possible-to-intercept-console-output) – ASh

答えて

2

あなたはConsole.Writeline()を傍受するConsole.OpenStandardOutputを使用することができます - このanswerと、このlinkTextBoxStreamWriterを実装し、標準出力ストリームにそれを注入する方法について説明します。 ConsoleTraceListenerについては

- (彼らは複数のトレースリスナをサポートするよう)あなたがTraceListenerを基づいて独自のテキストボックスを作成し、TraceSourcesを適切に割り当てることができるはずです。このanswerは、同じものを実装する方法を強調しています。

トレースソースとリスナーに関する詳細は、hereを参照してください。

関連する問題