【发布时间】:2013-06-27 14:24:15
【问题描述】:
我编写了一个 WPF 触摸屏应用程序。在这个应用程序中,我编写了一个用户控件,它是一个触摸屏键盘。
除了退格键之外,我所有的键都可以使用。显然所有的键都是按钮,在退格按钮上单击我想将退格键发送到焦点文本框。
我尝试了以下方法,但这只是在我的文本框中插入了一个方形字符:
private void buttonBackSpace_Click(object sender, RoutedEventArgs e)
{
PresentationSource source = PresentationSource.FromDependencyObject(CurrentControl);
//CurrentControl is my Textbox
KeyEventArgs ke = new KeyEventArgs(Keyboard.PrimaryDevice, source, 0, Key.Back)
{
RoutedEvent = UIElement.KeyDownEvent
};
System.Windows.Input.InputManager.Current.ProcessInput(ke);
}
有什么想法吗?我正在使用 Visual Studio 2012 和 Windows 8。
【问题讨论】:
-
只是猜测,第三个时间戳参数的用途是什么?每次按键都增加它是否有帮助。
-
说实话我不知道那个参数是什么。如果我更改或增加它,不会有任何不同。
-
大概它用于以某种方式同步 KeyPress 事件。在没有答案的情况下,我只是抓着稻草。
标签: c# wpf backspace keyeventargs