检测独立于键盘的问号

时间:2017-12-25 14:00:10

标签: c# wpf

目标很简单:当用户在文本框中输入字符时,我想检测此字符是否为问号键(?)。 我不在乎使用什么(文字改变,按键等...) 有一点需要提及:我正在使用德语键盘布局,因此我需要一个独立于键盘的解决方案(例如:e.Key = Keys.OemQuestion不起作用,当我按加号(+)键时会触发)< / p>

编辑:我尝试了 Convert.toString((char)e.Key)返回了\ u0095 e.Key.ToString()返回了OemOpenBrackets

1 个答案:

答案 0 :(得分:0)

我选择了来自@HansPassant的解决方案并设法使用 TextInput 事件来完成。

首先在构造函数中:

InitializeComponent();
CommandTextBox.AddHandler(TextBox.TextInputEvent, new TextCompositionEventHandler(CommandTextBox_TextInput), true);

您需要此代码来实际触发事件

TextInput中的

if(e.Text == "?")
{
     //Do something
}

注意: 这不会占用空间,控制,转移等。