WPF 中的自定义热键
Custom hotkey in WPF
我在 WPF 应用程序中实现了一些热键。
XAML:
<KeyBinding
Command="{Binding SomeCommand}"
Modifiers="Control"
Key="K"/>
现在我想要一个可以设置自定义热键的功能,以便用户可以通过按钮或类似的东西单独设置键。
有谁知道如何在 wpf 中完成此操作?
您需要使用
在视图模型中将 Key 与 属性 绑定
//ViewModel
string SomeCommnadShortcut {get; set}
<!-- xaml -->
<KeyBinding
Command="{Binding SomeCommand}"
Modifiers="Control"
Key={Binding SomeCommnadShortcut}/>
然后编写验证字符串的逻辑,更改这些 属性 并发送更新事件。
尝试在您的 ViewModel 中绑定 Key
<KeyBinding Command="{Binding SomeCommand}" Modifiers="Control" Key="{Binding SomeHotKey}"/>
然后在你的 ViewModel.cs:
private Key _SomeHotKey = System.Windows.Input.Key.K; //Default Hotkey
public Key SomeHotKey
{
get{ return _SomeHotKey; }
set{ _SomeHotKey = value; }
}
现在,您可以使用 SomeHotKey 自定义热键 属性。
我在 WPF 应用程序中实现了一些热键。
XAML:
<KeyBinding
Command="{Binding SomeCommand}"
Modifiers="Control"
Key="K"/>
现在我想要一个可以设置自定义热键的功能,以便用户可以通过按钮或类似的东西单独设置键。
有谁知道如何在 wpf 中完成此操作?
您需要使用
在视图模型中将 Key 与 属性 绑定//ViewModel
string SomeCommnadShortcut {get; set}
<!-- xaml -->
<KeyBinding
Command="{Binding SomeCommand}"
Modifiers="Control"
Key={Binding SomeCommnadShortcut}/>
然后编写验证字符串的逻辑,更改这些 属性 并发送更新事件。
尝试在您的 ViewModel 中绑定 Key
<KeyBinding Command="{Binding SomeCommand}" Modifiers="Control" Key="{Binding SomeHotKey}"/>
然后在你的 ViewModel.cs:
private Key _SomeHotKey = System.Windows.Input.Key.K; //Default Hotkey
public Key SomeHotKey
{
get{ return _SomeHotKey; }
set{ _SomeHotKey = value; }
}
现在,您可以使用 SomeHotKey 自定义热键 属性。