private void HotKeyTextBox_KeyUp(object sender, System.Windows.Input.KeyEventArgs e) { if (KeyList[1] == Key.None) { return; } if (!WinWrapper.KeyDict.ContainsKey(e.Key.ToString())) { System.Windows.MessageBox.Show($"Unsupported HotKey - {e.Key.ToString()}"); return; } if (WinWrapper.HotKeys.Count(x => x.Key == e.Key.ToString()) > 0) { System.Windows.MessageBox.Show($"HotKey already registered - {e.Key.ToString()}"); return; } Keyboard.ClearFocus(); switch ((sender as System.Windows.Controls.TextBox).Name) { case "ScenarioHotKeyTextBox": if (ViewModel.viewModel.SelectedScenario != null) { ViewModel.viewModel.SelectedScenario.HotKey = HotKey.CreateHotKey(HotKeyStatus.ExecuteScenario, KeyList[1].ToString(), KeyList[0]); } break; case "TemplateHotKeyTextBox": if (ViewModel.viewModel.SelectedTemplate != null) { ViewModel.viewModel.SelectedTemplate.HotKey = HotKey.CreateHotKey(HotKeyStatus.AddAction, KeyList[1].ToString(), KeyList[0]); } break; default: Logger.GetLogger().CatchException("MainWindow", "HotKeyTextBox_KeyUp", "Unknown TextBox.Name"); throw new Exception(); } KeyList[0] = KeyList[1] = Key.None; }