C# WPF MVVM TextBox.InputBindings等效于通用Windows

C# WPF MVVM TextBox.InputBindings等效于通用Windows,c#,wpf,mvvm,visual-studio-2015,win-universal-app,C#,Wpf,Mvvm,Visual Studio 2015,Win Universal App,我必须为Raspberry Pi 2编写一个应用程序,我正在使用VS2015通用Windows应用程序 在我以前的项目中,我使用以下代码绑定关键事件: <TextBox> <TextBox.InputBindings> <KeyBinding Command="{Binding LoginCommand}" Key="Enter" /> </TextBox.InputBindings> </TextBox

我必须为Raspberry Pi 2编写一个应用程序,我正在使用VS2015通用Windows应用程序

在我以前的项目中,我使用以下代码绑定关键事件:

<TextBox>
    <TextBox.InputBindings>
        <KeyBinding Command="{Binding LoginCommand}" Key="Enter" />
    </TextBox.InputBindings>
</TextBox


我认为这在WinRT中不可用

重要设置AutomationProperties.Acceleratory或 AutomationProperties.AccessKey不启用键盘功能。 它只向UI自动化框架报告应该是什么键 使用,以便通过辅助工具将此类信息传递给用户 技术。密钥处理的实现仍然需要改进 在代码中完成,而不是XAML。您仍然需要为附加处理程序 相关控件上的KeyDown或KeyUp事件,以便 在应用程序中实现键盘快捷键行为。此外, 未提供访问密钥的下划线文本装饰 自动地您必须明确地为特定的文本加下划线 如果愿意,请输入助记符作为内联下划线格式 在UI中显示带下划线的文本


谢谢你的回答@Kirotab,我有我的疑问,但现在我确定了。是否有一个变通办法,我可以用来告诉我的虚拟机已按下回车键?最近我看到了这个链接:@bitxwise发布的答案非常有用。遗憾的是,我尝试了他的方法,但在我的案例中,当文本框上按enter键时,由于某种原因,
FrameworkElement\u KeyDown()
事件被调用了两次。感谢分享这一点,它看起来很不错(不像我刚才使用代码隐藏处理时的解决方案,我从KeyDown处理程序手动启动了命令)(LoginBtn.Command.Execute(null))。只要我有时间,我就会检查。对于多个事件,我有相同的问题,我必须匆忙完成任务,因此快速解决方法是添加额外的标志,当我开始按下按钮时会升起,当我完成操作时会释放。我不确定是什么原因导致了它,但我认为这是可以的由于长按虚拟键盘而使用。