模拟 WPF 中的 Enter 键

jus*_*fly 5 c# wpf enter keypress

我正在尝试模拟按钮事件中的按键操作。我可以使用下面的代码来模拟一些键,例如Backspace,但Enter不起作用。

我究竟做错了什么?

private void btnEnter_Click(object sender, RoutedEventArgs e)
{
    tbProdCode.Focus();

    KeyEventArgs ke = new KeyEventArgs(
        Keyboard.PrimaryDevice,
        Keyboard.PrimaryDevice.ActiveSource,
        0,
        Key.Enter)
    {
        RoutedEvent = UIElement.KeyDownEvent
    };

    InputManager.Current.ProcessInput(ke);
}
Run Code Online (Sandbox Code Playgroud)

Jam*_*e P 3

我试过你的代码,可以Enter完美模拟。

你还没有说明你想Enter在你的 中做什么textbox,所以我将在这里冒险并假设你想要进入下一行 - 因为这是Enter在 a 中使用的最常见原因之一textbox

为此,您需要进行设置AcceptsReturn="True"-Xaml这允许textbox接受Enter密钥。

<TextBox x:Name="tbProdCode" AcceptsReturn="True" />

如果该功能不是您想要的,那么您可能没有连接事件来在Enter被击中时执行某些操作。