c#/ wpf通过事件模拟箭头键(和其他控制键)

时间:2011-01-20 16:06:52

标签: c# wpf textbox

我正在尝试在wpf文本框中模拟几个键盘操作,包括从另一个事件(例如按钮单击)按箭头(移动插入符号等)。通过提升

添加文本没问题

TextCompositionManager.TextInputEvent

事件,但尝试通过键盘事件发送密钥不起作用:

Keyboard.Focus(targetTextBox);

KeyEventArgs ke = new KeyEventArgs(Keyboard.PrimaryDevice, PresentationSource.FromVisual(targetTextBox), 0, Key.UP);

ke.RoutedEvent = Keyboard.KeyDownEvent;
targetTextBox.RaiseEvent(ke);

有没有办法通过TextInputEvent发送控制键,或使键盘事件有效 - 我尝试使用previewDownEvent并与keyUp事件配对。

编辑:如果可能的话,我更愿意通过wpf这样做,而不使用Windows窗体。

由于

1 个答案:

答案 0 :(得分:1)

我相信this正是您所寻找的,尽管它不使用事件。

...
    SendKeys.Send("{LEFT}");
    SendKeys.Send("{RIGHT}");
...

请记住首先将焦点设置到您想要输入的控件。