Einfügen an der Spitze der richtextbox
-
10-07-2019 - |
Frage
Was ist falsch mit diesem Code? Der Versuch, meinen Text zu bekommen am Anfang der Textbox einzufügen, anstatt an der Unterseite.
private void execute_Click(object sender, EventArgs e){ startFinshBox.Text = "Start Time: " + printTime()+""; startFinshBox.Text.Insert(0,printTime()+": Retrieving Results...\n"); }
Aber es wird die zweite Zeile in die RTB nicht einfügen. Ich habe mit startFinishBox.SelectionStart versucht = 0 als auch, und es machte keinen Unterschied. Fehle ich etwas anderes?
Danke, Psy
Lösung
startFinshBox.Text
ist eine Zeichenfolge, die ein unveränderlicher Typ in C # ist. string.Insert()
wird die geänderte Zeichenkette als Ergebnis zurück, aber es Ihren Code Sie es verwerfen. Damit es funktioniert, müssen Sie den Code ändern zu:
private void execute_Click(object sender, EventArgs e){
startFinshBox.Text = "Start Time: " + printTime()+"";
startFinshBox.Text = startFinshBox.Text.Insert(0,printTime()+": Retrieving Results...\n");
}
Andere Tipps
Die SelectionStart
Eigenschaft auf einem TextBox wird bestimmen, mit Text wird ausgewählt oder eingefügt werden.
Mit diesem Code Benutzen Sie den Code zu Beginn des Textfeld-Steuerelement einzufügen:
TextBox.SelectionStart = 0;
TextBox.SelectedText = "Start time: " + printTime();