如何为 MVVMLight 中的按钮分配快捷方式

How to assign a shortcut to a button in MVVMLight

如何在以下代码中将 enter key 分配给 on_Click 事件?

为了说明这一点,我想在按下回车键时触发 on_Click() 方法中的代码。

同样,我使用的是 MVVMLight 框架。

视图模型

namespace MyApp.ViewModel
{
    public class AppViewModel : ViewModelBase

    {
        public ICommand clickCommand { get; private set; }

        public AppViewModel()
        {
            clickCommand = new RelayCommand(() => on_Click());
        }

        private void on_Click()
        {      
            // button clicked     
        }
    }
}

XAML

<Button x:Name="myButton" 
        Content="Click Me" 
        HorizontalAlignment="right"
        Margin="0,84,72,0" 
        VerticalAlignment="Top" 
        Width="66" Height="25"
        Command="{Binding clickCommand}" Foreground="#FFF2F5FC" BorderBrush="{x:Null}">
    <Button.Background>
        <SolidColorBrush Color="#FF3DA5DB"/>
    </Button.Background>
</Button>

很棒 link 由@shivani 分享。那里涵盖了大多数方法。 您可以做的另一件事是设置按钮的 IsDefault 属性。

有一个可用的内置功能,您可以将一个按钮设置为默认值,以便在按下回车键时执行该按钮的点击事件。

所以,您也可以使用 IsDefault。

<Button x:Name="myButton" 
        Content="Click Me" 
        HorizontalAlignment="right"
        Margin="0,84,72,0" 
        VerticalAlignment="Top" 
        Width="66" Height="25" IsDefault="True"
        Command="{Binding clickCommand}" Foreground="#FFF2F5FC" BorderBrush="{x:Null}">
<Button.Background>
    <SolidColorBrush Color="#FF3DA5DB"/>
</Button.Background>