請注意,您必須從未觸摸Text
或Lines
直接或以前所有的格式被搞砸。
這裏是將解決這個問題不會弄亂格式化函數:
void changeLine(RichTextBox RTB, int line, string text)
{
int s1 = RTB.GetFirstCharIndexFromLine(line);
int s2 = line < RTB.Lines.Count() - 1 ?
RTB.GetFirstCharIndexFromLine(line+1) - 1 :
RTB.Text.Length;
RTB.Select(s1, s2 - s1);
RTB.SelectedText = text;
}
注意在C#中的編號是零烯類,所以要改變一號線你叫changeLine(yourrichTextBox, 0, yourNewText);
要只修改(而不是替換)該行,您只需訪問Lines
屬性;只要確保千萬不要更改吧!
所以到空白添加到二號線,你可以寫:
changeLine(yourrichTextBox, 1, yourrichTextBox.Lines[1] + " ");
來源
2015-04-04 10:46:56
TaW
感謝我現在用列表的相關行了,但我現在住的問題與RichTextBox中的最後一行:/ – nec 2015-04-04 11:25:10
是的,我的錯誤。對不起,我已經更新了答案。它現在對你有用嗎? – TaW 2015-04-04 12:32:27
非常感謝。 – nec 2015-04-05 08:45:55