富文本框*格式

时间:2018-01-11 01:18:58

标签: text colors formatting

语言:C#

我的问题......

Q值。是否有一种简单的方法来更改富文本框中的字符串格式,类似于使用HTML处理它的方式。

例如:

idx[I+1][N-1]

输出:您好 世界!

我也想知道是否有颜色?

亲切的问候,并提前感谢您的反馈。

2 个答案:

答案 0 :(得分:1)

富文本格式本身就是一种语言。但是,您无需学习它即可使用它。

然而,还有其他方法可以实现,这可能更实际,如:

RichTextBox1.Text = "Hello World"

' Select Hello and Bold It
RichTextBox1.Find("Hello")
Dim fntBold As New Font(RichTextBox1.Font, FontStyle.Bold)
RichTextBox1.SelectionFont = fntBold

' Select World and Set to Italics
RichTextBox1.Find("World")
Dim fntItalic As New Font(RichTextBox1.Font, FontStyle.Italic)
RichTextBox1.SelectionFont = fntItalic

之后,如果您感到好奇,可以查看RichTextBox.Rtf属性(它是一个字符串)以查看它的外观。这就是我在做完之后看到的:

{\rtf1\ansi\deff0{\fonttbl{\f0\fnil\fcharset0 Microsoft Sans Serif;}}\viewkind4\uc1\pard\lang1033\b\f0\fs17 Hello\b0  \i World\i0\par}

实际上,如果您再接受该文本,请打开记事本,复制Rtf属性的文本,另存为RTF文件。关闭记事本并在Word中打开RTF,您将看到相同的文本具有相同的外观。

答案 1 :(得分:0)

嗨,非常感谢 @ Ctznkane525 ,感谢您让我走上正轨,我确实将其转换为C#,这就是结果:

using System.Drawing.Text;

        rtb_Main.Text = "Hello World";
        rtb_Main.Find("Hello");
        Font fntBold = new Font(FontFamily.GenericSansSerif, 14.0F, FontStyle.Bold);
        rtb_Main.SelectionFont = fntBold;

        rtb_Main.Find("World");
        Font fntItalic = new Font(FontFamily.GenericSansSerif, 14.0F, FontStyle.Italic);
        rtb_Main.SelectionFont = fntItalic;