更改文本框输入

Cob*_*old 3 .net vb.net wpf

我想允许用户使用键盘输入符号.我正在检查按下的键的文本框onkeydown事件,然后将其更改为符号,例如,如果我按'a',则文本框将显示'☺'.但问题是文本框同时显示'a'和'☺'.有没有更好的事件来检查这个,或更好的方法来做到这一点?

Private Sub TextBox_KeyDown(sender as object, e as keyeventargs) handles TextBox.KeyDown
  Select Case e.key
    Case 'a'
      TextBox.text += '?'
    End Select
End Sub
Run Code Online (Sandbox Code Playgroud)

rsb*_*rro 7

尝试使用该KeyPress活动.在该事件处理程序中,您需要将Handled属性设置KeyPressEventArgs为true以防止将a键添加到文本框中.

Private Sub TextBox_KeyPress(sender as object, e as KeyPressEventArgs) handles TextBox.KeyPress
  Select Case e.key
    Case 'a'
      TextBox.text += '?'
      e.Handled = True
    End Select
End Sub
Run Code Online (Sandbox Code Playgroud)