diff --git a/src/Microsoft.Xaml.Behaviors/Input/KeyTrigger.cs b/src/Microsoft.Xaml.Behaviors/Input/KeyTrigger.cs index dae0561..094204c 100644 --- a/src/Microsoft.Xaml.Behaviors/Input/KeyTrigger.cs +++ b/src/Microsoft.Xaml.Behaviors/Input/KeyTrigger.cs @@ -74,6 +74,12 @@ protected override string GetEventName() private void OnKeyPress(object sender, KeyEventArgs e) { bool isKeyMatch = e.Key == this.Key; + // Handle the scenario where the Alt key is pressed (reported as Key.System), allowing the main key to be detected correctly. + if (e.Key == Key.System) + { + // Check if the actual key being held (e.SystemKey) matches the developer-defined key. + isKeyMatch = e.SystemKey == this.Key; + } // Get the actual modifiers considering special keys like LeftCtrl, RightCtrl, etc. ModifierKeys actualModifiers = GetActualModifiers();