【问题标题】:WPF: Binding RichTextBox to Logger OutputWPF:将 RichTextBox 绑定到记录器输出
【发布时间】:2011-03-18 14:32:48
【问题描述】:

我正在使用 NLog 在我的 WPF 应用程序中记录错误。记录器当前写入文件。我现在创建了一个RichTextBox 并希望同时将所有会话日志写入RichTextBox。我在 NLog 记录器上创建了一个包装器,因此我可以在包装器中包含写入其他变量的命令。但是我该如何做绑定呢?

感谢任何帮助

【问题讨论】:

  • 你想过使用 listview insetad 吗? Yoiu 可以将其绑定到可观察的消息集合...
  • 你想将Nlog日志的内容显示到RichTextBox中。这是正确的吗?
  • 我希望能够格式化错误消息。另外,用户将能够复制/粘贴等。
  • 不过,Felice 的方法还是不错的,它可以更轻松地实现复制/粘贴/格式化。虽然我建议使用ItemsControl

标签: wpf


【解决方案1】:

我会尝试这样的:

创建一些 LogReader 类来处理读取日志错误,它应该使用 StringReader 或您喜欢的任何阅读器。 LogReader 基本上会给你一个包含文件内容的字符串。根据您的需要,特别是如果文件太大,也许您需要将其拆分为块,但我认为您会明白的。 然后你将有一个 ViewModel 类,它基本上将数据呈现给 RichTextBox

现在是棘手的部分,但在gem 的帮助下,您将能够将字符串数据绑定到 RichTextBox。

<RichTextBox attached:RichTextboxAssistant.BoundDocument="{Binding LogMessages}"/>

HTH

【讨论】:

    【解决方案2】:

    我最近为 nLog 找到了这个自制的 RichTextBox 目标:

    http://nlog.codeplex.com/workitem/6272?PendingVoteId=6272

    我描述a way to make it work here

    【讨论】:

      猜你喜欢
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多