【发布时间】:2021-03-02 00:34:23
【问题描述】:
我正在寻找对 RichTextBox 的行进行排序的最佳方法,我现在正在使用这个:
public void SortLines(object sender, EventArgs e)
{
TextPointer pStart = TextInput.Document.ContentStart;
TextPointer pEnd = TextInput.Document.ContentEnd;
TextRange text = new TextRange(pStart, pEnd);
string[] lines = text.Text.Split('\n');
Array.Sort(lines);
text.Text = String.Join(String.Empty, lines);
}
有没有最好的方法来做到这一点?
当我调用它时,光标被放置在第一行 RichTextBox 中,我如何将它放在它之前的位置? 我尝试设置 pStart/pEnd 和 CaretPositiom,但属性是只读的。
我希望这很清楚。提前致谢。
【问题讨论】:
-
您按什么排序(第一个字母、字母数或其他)?您是否希望将光标放置在相同的相对位置(即,如果您有 A、B、C 行并且光标位于 B,那么您排序并且新顺序是 C、A、B,那么光标是否应该留在 B还是留在A)?
标签: c# .net wpf richtextbox