1

WPF を使用して仮想キーボードで passwordbox コントロールを使用するにはどうすればよいですか? テキスト ボックス コントロールを使用すると、キャレットを次のテキスト位置に移動するだけでかなり簡単です。キャレット位置を公開しない passwordbox ではそうではありません。

私は自分自身を派生させるべきですか?薄めのソースのようです。

4

1 に答える 1

1

次のようなことを試して、PasswordBox で選択を設定できます。

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

その後、次のように呼び出してカーソル位置を設定します。

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

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

上記の回答はAndrew Jacksonによって提供されており、正常に機能します。

于 2012-03-20T12:56:52.710 に答える