我正在尋找一個Winforms控件,可以在控制檯窗口中輸出文本(輸出附加到底部,顏色格式等)。就像大多數IDE中的「輸出」窗口一樣。控制檯式的文本控制?
我試着自己做一個,但它沒有按照我想要的方式工作,所以我想知道是否有一些現有的控制。
這是一個開源項目。
我正在尋找一個Winforms控件,可以在控制檯窗口中輸出文本(輸出附加到底部,顏色格式等)。就像大多數IDE中的「輸出」窗口一樣。控制檯式的文本控制?
我試着自己做一個,但它沒有按照我想要的方式工作,所以我想知道是否有一些現有的控制。
這是一個開源項目。
我寫了一個簡單的控件。但它不適用於顏色(它來自textWriter,它不支持顏色)。
internal class TextBoxWriter : TextWriter {
TextBox _output;
public TextBoxWriter(TextBox output) {
_output = output;
}
public override void WriteLine(string value) {
Write(value + System.Console.Out.NewLine);
}
public override void Write(string value) {
if(_output.InvokeRequired) {
_output.BeginInvoke((Action<string>)Write, value);
} else {
_output.AppendText(value);
}
}
public override void Write(char value) {
Write(value.ToString());
}
public override Encoding Encoding {
get { return Encoding.UTF8; }
}
}
用法:
//designer code
private System.Windows.Forms.TextBox outputTextBox;
this.outputTextBox = new System.Windows.Forms.TextBox();
//user code
var _textWriter = new TextBoxWriter();
System.Console.SetOut(_textWriter);
Console.WriteLine("hello"); //this will be show in the outputTextBox
我之前在幾個應用程序中做過類似的事情,但是你的實現更簡潔。謝謝!而且,對我而言,我可以很輕鬆地將控制檯重定向到另一位作者。這很棒。 – 2013-06-13 16:51:07
什麼RichTextBox控件(內置)?或者,也許你可以使用ListView,因爲它可以用於irc。特別是ObjectListView提供了很多可能性。
.Net Windows控制檯應用程序不能完成這項工作嗎?你想做什麼,你無法做到這一點? – DOK 2010-07-25 20:06:01
這是一個IRC客戶端。 – 2010-07-25 20:11:34
您是否找到您需要的? – MadBoy 2010-07-30 17:48:36