C#赢。表单:向richtextbox添加换行符

问题描述 投票:-1回答:1

我有一个richtextbox,我在其中填充格式化文本。 richtextbox的RTF如下所示: -

{\rtf1\ansi\ansicpg1252\deff0{\fonttbl{\f0\fnil\fcharset0 Bookman Old Style;}}
\viewkind4\uc1\pard\lang1033\b\f0\fs21 Name\b0\tab : John Miller\par
\b Current Address\b0\tab : ABCDEFGHI JKLMNOP QRST UVWXYZ\par
\b Permanent Address\b0\tab : ABCDEFGHI JKLMNOP QRST UVWXYZ\par
\b Temporary Address\b0\tab : ABCDEFGHI JKLMNOP QRST UVWXYZ\par
}

它的OUTPUT看起来像这样: -


姓名:约翰米勒 当前地址:ABCDEFGHI JKLMNOP QRST UVWXYZ 永久地址:ABCDEFGHI JKLMNOP QRST'在这里添加换行'UVWXYZ 临时地址:ABCDEFGHI JKLMNOP QRST UVWXYZ


现在我想在文本索引119处添加换行符,其中写入要添加的换行符。我该怎么做?

挑战

  1. 你不能直接在文本中使用换行符,如: qazxsw poi 因为它将删除我在文本文本中完成的粗体设置。
  2. 不能直接在RTF中更改,因为我们不知道特定文本可能在哪个索引处。假设文本为119索引,但RTF为第263索引。 我们也不能使用文本搜索来查找RTF中的索引,因为所有3个地址都完全相同。
c# winforms richtextbox rtf
1个回答
1
投票

这应该为你做:

richTextBox.Text = richTextBox.Text.Substring(0,119) + Environment.NewLine + richTextBox.Text.Substring(119, richTextBox.Text.Length - 119);
© www.soinside.com 2019 - 2024. All rights reserved.