如何在富文本框中为所选行预写文本

本文关键字:文本 | 更新日期: 2023-09-27 17:59:32

假设我有一些批处理代码,它批量打印出一个hello-world程序,并且我已经将代码放入了一个富文本框(在visual C#.NET中):

@echo off
cls
title Hello World
echo Hello World
pause

现在,我希望能够突出显示一行或一行的一部分,然后通过在前面添加一个"::"来注释突出显示的行。

例如,如果我高亮显示"echo",然后单击一个按钮,它会在行的前面插入一个"::"。

我该如何在代码中做到这一点?

如何在富文本框中为所选行预写文本

int selStart = myRichTextBox.SelectionStart;
int selLength = myRichTextBox.SelectionLength;
int line = myRichTextBox.GetLineFromCharIndex(selStart);
int endLine = myRichTextBox.GetLineFromCharIndex(selStart + selLength);
for(; line <= endLine; line++) {
    int charIndex = myRichTextBox.GetFirstCharIndexFromLine(line);
    myRichTextBox.Select(charIndex, 0);
    myRichTextBox.SelectedText = "::";
}
myRichTextBox.Select(selStart, selLength);

是关于我将如何做。它将处理多行,并且它将在所选行上添加注释,而不管实际的选择区域如何。