【问题标题】:Formatting Text in a RichTextBox格式化 RichTextBox 中的文本
【发布时间】:2014-08-13 09:27:40
【问题描述】:

我需要格式化RichTextBox 的字体——但只有几行。 我现在正在写一个更新工具,它有一个实施的变更日志。

我知道我必须实现 RichTextBox 并摆脱旧的文本框。现在我需要这样做,

2.5.5302.13819 vom 08.07.2014

  • Unterstützung von Peer 2 Peer Netzwerken mit Arbeitsgruppe im Lizensierungsmodell

2.5.5297.26083 vom 03.07.2014

  • Mehrmalige bzw。 doppelte Aktualisierung der Beleg- und Auftragssteuerung unterbunden
  • 多样的克莱尼格凯腾

我的想法是在\n 之后将每一行设置为粗体(或设置更大的字体),但我如何将它们设置为这样的格式(我还没有编写任何代码)?

【问题讨论】:

  • 您只能在选中时格式化一段文本。设置 SelectionStart 和 SelectionLength,然后设置格式。 (SelectionBullet & SelectionFont.Bold)
  • 这意味着很难做这些选择。

标签: c# winforms text richtextbox


【解决方案1】:

我成功了:

using (Font boldFont = new Font(txtRelease.Font, FontStyle.Bold)) {
  foreach (string sLine in txtRelease.Lines) {
    if (sLine.Length > 0) {
      if (char.IsNumber(sLine[0]) && sLine.Contains("vom")) {
        txtRelease.SelectionStart = txtRelease.Text.IndexOf(sLine);
        txtRelease.SelectionLength = sLine.Length;
        txtRelease.SelectionFont = boldFont;
      }
    }
  }
}

【讨论】:

  • 我用更新的代码块替换了您的图像。你应该处理掉你的字体,所以我把它放在一个 using 块中。我无法复制第一行错误,它加粗了我列表中的第一行。如果您不喜欢该修改,请随时将其回滚到原始版本。
  • 它现在工作正常..出于..某些原因。奇怪的行为。但是感谢您的帮助;)
猜你喜欢
  • 2011-05-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-25
  • 1970-01-01
相关资源
最近更新 更多