【问题标题】:Changing the forecolor and backcolor of text in a textbox更改文本框中文本的前景色和背景色
【发布时间】:2011-04-27 19:57:31
【问题描述】:

我正在使用 VB.NET 制作一个 C++ 代码编辑器应用程序。我想在用户键入关键字时更改关键字的颜色。我也在寻找一种方法来突出显示代码的某些行。

有没有办法改变文本框或富文本框内一段文本的前景色和背景色?

【问题讨论】:

  • 不可能,RichTextBox 是必需的,只要您保持标准控件即可。
  • 这是 WinForms、WPF、ASP.NET 吗?

标签: c# vb.net textbox background-color foreground


【解决方案1】:

是的,在 Richtextbox 控件中使用 RTF。

来自http://www.biblioscape.com/rtf15_spec.htm

{\f1\cb1\cf2 This is colored text. The background is color
1 and the foreground is color 2.}

【讨论】:

【解决方案2】:

我真的不知道你想做什么,所以这里有一些选项。

如果您想了解如何编写语法高亮控件的分步教程,可以阅读以下文章:

  1. Syntax Highlighting in RichTextBox Part 1Part 2
  2. Syntax Highlighting in RichTextBox using C#


用 VB.NET 编写的基本语法高亮控件,请看这篇文章:Color Syntax Control (VB.NET)


如果您想要一个成熟的语法高亮控件,有两个非常好的选择。它们是:

  1. ScintillaNET 用于 WinForms 和;
  2. AvalonEdit 用于 WPF。
    • CodeProject 上有一个关于 Using AvalonEdit 的教程,所以一定要检查一下。

【讨论】:

    【解决方案3】:

    不幸的是,文本框的普通前景和背景属性无济于事,您需要手动使用富文本和格式(通过文本着色和突出显示算法)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-25
      • 2011-01-29
      • 1970-01-01
      • 2011-08-10
      相关资源
      最近更新 更多