要件に従って、2 つの文字と 1 つのコントロール キー (例 (ALT + S + C) のキーの組み合わせ) のイベントをキャプチャする必要があります。どうすれば同じものを実装できますか。
ありがとうラニッシュ
編集:修正されたコード。Gesture
とKey
プロパティの両方を使用することはできません。最後に宣言されたプロパティがキーとして使用され、プロパティで指定されたキーはGesture
無視されます。
次のコードは、2 つのキーではなく、2 つの ModifierKey でのみ可能です。
<KeyBinding Gesture="Alt+Shift+C" Command="{Binding ACommand}"/>
2 つのキーと 1 つModifierKey
のキーの組み合わせを実装するには、次の記事が非常に役立ちます。
<interactivity:EventTrigger EventName="KeyDown">
<mvvmlight:EventToCommand Command="{Binding Command}" PassEventArgsToCommand="True" />
</interactivity:EventTrigger>
private void Event()
{
if ((Keyboard.Modifiers & ModifierKeys.Control) == ModifierKeys.Control)
{
if (Keyboard.IsKeyDown(Key.C) && Keyboard.IsKeyDown(Key.T))
{
//code
}
}
}
以下のコードを使用して検出できます。
private void UIElement_OnPreviewKeyDown(object sender, KeyEventArgs e)
{
if (Keyboard.Modifiers == ModifierKeys.Alt && Keyboard.IsKeyDown(Key.S)
&& Keyboard.IsKeyDown(Key.C))
{
//if you want, you can fire event here
}
}