Windows Forms RichTextBox-cursor-position
Habe ich eine C# - Windows Forms-Programm, das mit einer RichTextBox-Steuerelement. Wenn der text in der box geändert (andere als die in der Eingabe ändern), der cursor geht zum Anfang zurück.
In anderen Worten, wenn der text in das RichTextBox-Steuerelement geändert wird mithilfe der Text-Eigenschaft, es lässt den cursor zurück springen.
Wie kann ich halten Sie den cursor in der gleichen position, oder verschieben Sie Sie zusammen mit den bearbeiteten text?
Dank
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie speichern der cursor-position vor der änderung, und dann wiederherstellen, danach:
Vielleicht wollen Sie auch das gleiche tun mit SelectionLength, wenn Sie nicht wollen, um die Markierung aufzuheben. Beachten Sie, dass dies kann zu seltsamen Verhalten, wenn der eingefügte text wird in die Auswahl. Dann benötigen Sie zum erweitern der Auswahl um die Dauer des eingefügten Texts.
Vorsichtig sein, wenn jemand Aktualisierungen oder änderungen völlig RichTextBox-Inhalt, der focus-Methode muss invoqued zuvor, um sich zu bewegen der Einfügemarke:
hier ist ein kleineres, das hat den gleichen Effekt.
this.richTextBox1.Select(this.richTextBox1.Text.Length, 0);
Markiert 0 chars am Ende des Textes und setzt den cursor auf end