【问题标题】:C# - Get a RTF-formatted string to a RichTextBoxC# - 将 RTF 格式的字符串获取到 RichTextBox
【发布时间】:2019-06-21 08:16:09
【问题描述】:

我有一个 RTF 格式的字符串,我想将它加载到 RichTextBox 中,但 RichTextBox 只显示文本而不显示格式。

我使用的是richTextBoxExtended,它有一个richTextBox,可以使用“richTextBoxExtended1.RichTextBox”作为普通的RichTextBox访问。

我已经尝试将字符串加载到 RichTextBox 的 Rtf 参数中,如下:

string a = "{\\rtf1\\ansi\\ansicpg1252\\deff0\\deflang1036{\\fonttbl{\\f0\fnil\\fcharset0 Microsoft Sans Serif;}} \n\\viewkind4\\uc1\\pard\\i\\f0\\fs17 [FirstNames]\\i0\\fs17\\par\n}";           
richTextBoxExtended1.RichTextBox.Rtf = a;

它应该以粗体和斜体显示“[FirstNames]”,但只显示“[FirstNames]”而不进行格式化。

提前感谢您的任何建议。

【问题讨论】:

  • 您的代码在我使用默认 RichTextBox 创建的新 WinForms 项目上运行良好,richTextBoxExtended1 及其 .RichTextBox 成员是什么?您使用什么控件?
  • 我正在使用这个控件:codeproject.com/KB/miscctrl/…
  • 嗯,对不起,我错过了文字也应该是粗体,而不仅仅是斜体。我有文本斜体,但没有使用您提到的控件或默认 RichTextBox 的粗体 - 我认为您应该检查并验证您的 RTF。

标签: c# string richtextbox rtf


【解决方案1】:

问题已解决:它无法获取格式,因为richTextBox 位于表单中显示的用户控件中。我将所有代码移到了一个没有 UserControl 的 Form 元素中,并且它起作用了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-17
    • 1970-01-01
    • 2022-08-18
    • 1970-01-01
    • 2010-10-10
    • 2012-12-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多