Wie bekomme ich das letzte Zeichen in die Textbox geschrieben?

8

Ich möchte wissen, wie man das neueste Zeichen in TextBox schreibt. Es bedeutet nicht das letzte der Saite. Zum Beispiel schreibe ich das:

  

Dies ist ein Test.

Aber ich habe 's' vergessen, also bewege ich meinen Finger zum 'i' und füge das 's' hinzu:

  

Dies ist ein Test.

Also, wie kann ich das 's' bekommen?

Ich möchte es in Char oder String bekommen, aber ich weiß nicht, wie es geht ...

Ich hoffe, es ist klar.

    
TDK 18.02.2013, 14:59
quelle

4 Antworten

8

Wenn Sie das letzte geschriebene Zeichen erhalten möchten, dann abonnieren Sie TextBox zu KeyDown Ereignis:

C #:

%Vor%

XAML:

%Vor%

Dann:

%Vor%

Wenn Sie den Index des letzten geschriebenen Zeichens erhalten möchten, ist das komplizierter. Eine Lösung könnte darin bestehen, die Mausposition und den Cursor in TextBox zu verfolgen.

    
Ryszard Dżegan 18.02.2013, 15:07
quelle
4

Die Antwort von yBee ist fast korrekt, mit der Ausnahme, dass das Ereignis zumindest unter Windows Phone 8 KeyDown , nicht KeyPress heißt.

    
Haspemulator 18.02.2013 15:14
quelle
0

Verwenden Sie diesen Code, um das letzte Zeichen in die Textbox einzufügen

%Vor%     
Moory Pc 04.02.2014 22:37
quelle
0

Schau mal, es könnte helfen. Um das letzte Zeichen eines Textes zu erhalten, ist ein weiterer Vorschlag, ein

anzuhängen

"\n" ( nameTextbox.Append("\n") )

und dann

int lineCount = nameTextbox.Lines.Count();

und schließlich, verwenden Sie die Methode

nameTextbox.GetFirstCharIndexFromLine(lineCount) .

Dort kannst du (index-1) (oder Was auch immer, sei vorsichtig und teste es mit einem kleineren Text) als Index deines letzten Charakters.

    
Nayebifar 11.03.2015 04:52
quelle