2009-06-18 5 views
1

Wie benutze ich ein Passwortbox-Steuerelement mit einer virtuellen Tastatur mit WPF? Mit dem Textfeld-Steuerelement ist es ziemlich einfach, den Cursor an die nächste Textposition zu verschieben. nicht so mit der passwordbox, die die Caret-Position nicht freilegt.wpf passwordbox caret

Soll ich nur meine eigene ableiten? Scheint wie schwache Soße.

Antwort

1

Sie können so etwas wie diese versuchen, die Auswahl der PasswordBox einzustellen:

private void SetSelection(PasswordBox passwordBox, int start, int length) { 
    passwordBox.GetType().GetMethod("Select", BindingFlags.Instance | BindingFlags.NonPublic) 
         .Invoke(passwordBox, new object[] { start, length }); 
} 

Danach wird es so nennen sich die Cursor-Position zu setzen:

// set the cursor position to 2... or length of the password 
SetSelection(passwordBox1, 2, 0); 

// focus the control to update the selection 
passwordBox1.Focus(); 

Die obige Antwort vorgesehen ist, von Andrew Jackson und es funktioniert gut.

+0

Wie würden Sie die aktuelle Caret-Position ermitteln? –