【发布时间】:2010-11-13 03:59:50
【问题描述】:
假设内容符合某种模式(本质上是语法突出显示),是否有库可以根据内容对文本框(或 Richtextbox)的内容进行格式化?如果这在 web 世界和 winform 中都是可能的,那就太好了,尽管我更喜欢 winform(或 WPF)。
【问题讨论】:
标签: .net
假设内容符合某种模式(本质上是语法突出显示),是否有库可以根据内容对文本框(或 Richtextbox)的内容进行格式化?如果这在 web 世界和 winform 中都是可能的,那就太好了,尽管我更喜欢 winform(或 WPF)。
【问题讨论】:
标签: .net
这是您需要的一点点。 它将选择第一个到第十个字符 或到 RichTextBox 的全长 然后更改选择的颜色。 关键是,一旦您做出选择,您就是在对选择进行更改,而不是对整个 RichTextBox。 然后,您可以将字体更改为粗体。 粗体有点奇怪。
'select the first character
rtbRichTextBox.SelectionStart = 0
'Select the length forward as far as you need to
rtbRichTextBox.SelectionLength = 10 'Len(rtbRichTextBox.Text)
' change the text color
rtbRichTextBox.SelectionColor = Color.Blue
' make a highlight color over the text
'rtbRichTextBox.SelectionBackColor = Color.Yellow
Dim newFontStyle As System.Drawing.FontStyle
If rtbRichTextBox.SelectionFont IsNot Nothing Then
newFontStyle = FontStyle.Bold
rtbRichTextBox.SelectionFont = New Font(MyObj_Font_Arial.FontFamily, _
MyObj_Font_Arial.Size, _
newFontStyle)
end if
'a more straight forward bold would be to change the font.
Dim MyObjectArialFont As New Font("Arial", 6.5, FontStyle.Bold)
rtbRichTextBox.SelectionFont = MyObjectArialFont
【讨论】:
【讨论】:
您需要做的就是以编程方式选择文本,然后设置 SelectionColor 属性。当然,您需要编写正则表达式来确定要选择的文本,但之后对其着色很简单。
哦,是的;这不适用于 TextBox,仅适用于 RichTextBox(显然)。
【讨论】: