/// <summary> /// обработка события KeyDown дла панели ввода WritePanel /// для отслеживания нажатия на клавиши CapsLock и Shift /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void WritePanel_KeyDown(object sender, KeyEventArgs e) { if (flagStart) // если нажата кнопка "Старт" { // определяем кнопку по клавише ButtonDouble tempButton = GetButtons(e); // если кнопка определилась if (tempButton.self != null && tempButton.shift != null) { // если включен CapsLock if (Keyboard.IsKeyToggled(Key.CapsLock)) { // если нажат Shift if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift)) { Letters_Small_Symbols(); //регистр букв - нижний, цифровой ряд - символы } else { Letters_Big_Digit(); // регистр букв - верхний, цифровой ряд - цифры } } else // если CapsLock выключен { // если нажат Shift if (Keyboard.IsKeyDown(Key.LeftShift) || Keyboard.IsKeyDown(Key.RightShift)) { Letters_Big_Symbols(); // регистр букв - верхний, цифровой ряд - символы } else { Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры } } // если это не клавиши CapsLock, Ctrl, Win, Alt if (e.Key.ToString() != "Capital" && !e.Key.ToString().Contains("Ctrl") && !e.Key.ToString().Contains("Win") && !e.Key.ToString().Contains("Alt")) { // меняем цвет фона на белый tempButton.self.Background = Brushes.White; tempButton.shift.Background = Brushes.White; } } } }
/// <summary> /// обработка события KeyUp для панели ввода WritePanel /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void WritePanel_KeyUp(object sender, KeyEventArgs e) { if (flagStart) // если нажата кнопка "Старт" { // определяем кнопку по клавише ButtonDouble tempButton = GetButtons(e); // если кнопка определилась if (tempButton.self != null && tempButton.shift != null) { // если включен CapsLock if (Keyboard.IsKeyToggled(Key.CapsLock)) { // если отжат Shift if (Keyboard.IsKeyUp(Key.LeftShift) || Keyboard.IsKeyUp(Key.RightShift)) { Letters_Big_Digit(); // регистр букв - верхний, цифровой ряд - цифры } else { Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры } } else // если CapsLock выключен { // если отжат Shift if (Keyboard.IsKeyUp(Key.LeftShift) || Keyboard.IsKeyUp(Key.RightShift)) { Letters_Small_Digit(); // регистр букв - нижний, цифровой ряд - цифры } else { Letters_Big_Symbols(); // регистр букв - верхний, цифровой ряд - сиволы } } // возвращаем цвет фона tempButton.self.Background = tempButton.self.BorderBrush; tempButton.shift.Background = tempButton.shift.BorderBrush; } tempButton.self = null; tempButton.shift = null; } }