/ / textbox Einfügen und Entfernen von Funktionen in vb.net oder c # - c #, vb.net

Textfeld Einfügen und entfernen Funktion in vb.net oder c # - c #, vb.net

Wie aktualisiere ich den Text von der TextBox Steuerung?

Betrachten Sie a TextBox das enthält bereits die Zeichenfolge "Wel"

Um Text in die einzufügen TextBox, Ich benutze:

   TextBox1.Text = TextBox1.Text.Insert(3, "come")

Und um Zeichen aus der TextBox:

    TextBox1.Text = TextBox1.Text.Remove(3, 4)

Aber ich muss das können:

    TextBox1.Text.Insert(3, "come");
TextBox1.Text.Remove(3, 4);

Dieser Code aktualisiert jedoch nicht die TextBox.

Ist das möglich?

Kann dies über die Append-Methode erreicht werden?

Antworten:

0 für die Antwort № 1

Text Die Eigenschaft von TextBox ist vom Typ string, die unveränderlich ist. Es ist nicht möglich, die vorhandene Zeichenfolge zu ändern. Insert() oder Remove() Gibt eine neue Instanz von string mit der Änderung zurück und Sie müssen diese neue Instanz wieder der Text-Eigenschaft von TextBox zuweisen.

Es gibt TextBox.AppendText() Das könnte Sie interessieren. Es hängt Text an das Ende der Zeichenfolge, aber Sie können nichts wie tun Insert() oder Remove() damit aber.

BEARBEITEN:

Für Ihren Tastendruck könnten Sie so etwas tun

        char charToReplace = (char) (e.KeyChar + 1);    // substitute replacement char
textBox1.SelectedText = new string(charToReplace,1);
e.Handled = true;

0 für die Antwort № 2

"string" ist ein unveränderlicher Typ, so dass jedes Mal, wenn der Zeichenfolgenwert geändert wird, neuer Speicher zugewiesen wird. Also, wenn Sie Text einfügen oder entfernen möchten TextBox, müssen Sie es zurück zuweisen TextBox.Text Eigentum. Wenn Sie jedoch nur Text an die TextBox.Text, du kannst tun

textBox.AppendText("Hello");