/// <summary> /// Событие на нажатие кнопки /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void KeyButton_Click(object sender, RoutedEventArgs e) { // Получим текст кнопки string Out = ((KeyButton)sender).Letter; // и произведём операцию switch (Out) { // Сначала специфичные // - Shift - изменим регистр case "Shift": Shift = !Shift; foreach (KeyButton KB in NumEngKeys) { KB.SetShift(Shift); } foreach (KeyButton KB in NumRusKeys) { KB.SetShift(Shift); } foreach (KeyButton[] KBA in RusKeys) { foreach (KeyButton KB in KBA) { KB.SetShift(Shift); } } foreach (KeyButton[] KBA in EngKeys) { foreach (KeyButton KB in KBA) { KB.SetShift(Shift); } } break; // - Изменим язык case "En/Ru": Lang = Lang == Languages.Eng ? Languages.Rus : Languages.Eng; break; // - Закроем клавиатуру case "OK": Visibility = Visibility.Collapsed; break; // - В остальных случаях напечатаем написанный символ default: WriteLetter(Out); break; } }