C# PROGRAMMING

Redirecting The Command-line To A Text Block

Article by:

It involves inheriting from the StringWriter class, and overwriting it’s WriteLine function with your own code that writes the text to the text block (or any other text-capable object), rather than Windows writing it to the system console (whatever that may be).

Note that this code is suitable for passing into functions that require a System.IO.Stream, but this does not redirect messages that are being sent directly to the command line.

namespace StringRedirect
{
/// <summary>
/// Allows text blocks to appear like a command line for serial out string messages.
/// </summary>
public class TextBlockStreamWriter : StringWriter
{
private TextBlock _textBlock;

public string Text
{
get
{
return _textBlock.Text;
}
set
{
_textBlock.Text += value;
}
}

public TextBlockStreamWriter(ref TextBlock t)
{
_textBlock = t;
}

public override void WriteLine(string msg)
{
Text = msg + "\n";
}
}
}


Authors

Geoffrey Hunter

Dude making stuff.