Trace listener to write to a text box (WPF application)(跟踪侦听器以写入文本框(WPF 应用程序))
问题描述
对于我的 WPF 应用程序,我使用 TextWriterTraceListener 将日志记录到文本文件.如何将 Trace 输出也显示到文本框?
For my WPF application I do logging to a text file using a TextWriterTraceListener. How can I also display the Trace output to a textbox?
推荐答案
我在 C# winforms 中使用这个,应该很容易调整到 wpf
I use this for C# winforms, should be easily adjustable to wpf
public class MyTraceListener : TraceListener
{
private TextBoxBase output;
public MyTraceListener(TextBoxBase output) {
this.Name = "Trace";
this.output = output;
}
public override void Write(string message) {
Action append = delegate() {
output.AppendText(string.Format("[{0}] ", DateTime.Now.ToString()));
output.AppendText(message);
};
if (output.InvokeRequired) {
output.BeginInvoke(append);
} else {
append();
}
}
public override void WriteLine(string message) {
Write(message + Environment.NewLine);
}
}
像这样使用它
TraceListener debugListener = new MyTraceListener (theTextBox);
Debug.Listeners.Add(debugListener);
Trace.Listeners.Add(debugListener);
记得 Trace/Debug.Listeners.Remove(debugListener);当你不再需要它时.
Remember to Trace/Debug.Listeners.Remove(debugListener); when you don't need it anymore.
这篇关于跟踪侦听器以写入文本框(WPF 应用程序)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:跟踪侦听器以写入文本框(WPF 应用程序)
基础教程推荐
- 是否可以在 asp classic 和 asp.net 之间共享会话状态 2022-01-01
- 经典 Asp 中的 ResolveUrl/Url.Content 等效项 2022-01-01
- JSON.NET 中基于属性的类型解析 2022-01-01
- 全局 ASAX - 获取服务器名称 2022-01-01
- 从 VS 2017 .NET Core 项目的发布目录中排除文件 2022-01-01
- 将事件 TextChanged 分配给表单中的所有文本框 2022-01-01
- 如何动态获取文本框中datagridview列的总和 2022-01-01
- 错误“此流不支持搜索操作"在 C# 中 2022-01-01
- 首先创建代码,多对多,关联表中的附加字段 2022-01-01
- 在 VS2010 中的 Post Build 事件中将 bin 文件复制到物 2022-01-01
