C# 企业库TraceListener在应用程序内显示日志消息

C# 企业库TraceListener在应用程序内显示日志消息,c#,enterprise-library,entlib-logging,C#,Enterprise Library,Entlib Logging,我现在正在使用microsoft enterprise library 6很短一段时间。格式化的日志记录(例如到文本文件或控制台的日志记录)工作正常,但我找不到在windows窗体应用程序中显示这些日志消息的方法 因此,我要做的是在windows窗体应用程序内的日志窗口/文本框中显示与我使用FlatFileTraceListener记录到文件的格式完全相同的消息 作为解决方法,我初始化了一个 FormattedTextWriterTraceListener(TextWriter writer,

我现在正在使用microsoft enterprise library 6很短一段时间。格式化的日志记录(例如到文本文件或控制台的日志记录)工作正常,但我找不到在windows窗体应用程序中显示这些日志消息的方法

因此,我要做的是在windows窗体应用程序内的日志窗口/文本框中显示与我使用
FlatFileTraceListener
记录到文件的格式完全相同的消息

作为解决方法,我初始化了一个

FormattedTextWriterTraceListener(TextWriter writer, string name, ILogFormatter formatter);
使用
StringWriter
作为
TextWriter
并在每次记录消息时手动触发事件,然后在使用新文本引发事件时更新整个文本框,但这看起来不是一个干净的解决方案


有人有解决方案吗?

必须是实时解决方案还是按需解决方案?对于随需应变,您可以只读取日志文件(从配置中确定日志文件名并将其读入)。我觉得你的解决办法还可以。为了使它更简洁,不要使用StringWriter和事件,而是创建自己的TextWriter,直接附加到文本框,如所示:。