public static void UpdateKeyboard() { KeyboardState keyboardState = Keyboard.GetState(); Keys[] keys = keyboardState.GetPressedKeys(); if (keys.Length > 0) { if (keys[0] != _lastPressedKey) { if (_textEditable != null) { _lastPressedKey = keys[0]; switch (keys[0]) { case Keys.End: _textEditable.MoveEnd(); break; case Keys.Home: _textEditable.MoveHome(); break; case Keys.Left: _textEditable.MoveLeft(); break; case Keys.Up: _textEditable.MoveUp(); break; case Keys.Right: _textEditable.MoveRight(); break; case Keys.Down: _textEditable.MoveDown(); break; case Keys.Back: _textEditable.BackSpaceOneSymbol(); break; case Keys.Delete: _textEditable.DeleteOneSymbol(); break; case Keys.Enter: _textEditable.Return(); break; case Keys.D0: case Keys.D1: case Keys.D2: case Keys.D3: case Keys.D4: case Keys.D5: case Keys.D6: case Keys.D7: case Keys.D8: case Keys.D9: case Keys.NumPad0: case Keys.NumPad1: case Keys.NumPad2: case Keys.NumPad3: case Keys.NumPad4: case Keys.NumPad5: case Keys.NumPad6: case Keys.NumPad7: case Keys.NumPad8: case Keys.NumPad9: case Keys.A: case Keys.B: case Keys.C: case Keys.D: case Keys.E: case Keys.F: case Keys.G: case Keys.H: case Keys.I: case Keys.J: case Keys.K: case Keys.L: case Keys.M: case Keys.N: case Keys.O: case Keys.P: case Keys.Q: case Keys.R: case Keys.S: case Keys.T: case Keys.U: case Keys.V: case Keys.W: case Keys.X: case Keys.Y: case Keys.Z: case Keys.F1: case Keys.F2: case Keys.F3: case Keys.F4: case Keys.F5: case Keys.F6: case Keys.F7: case Keys.F8: case Keys.F9: case Keys.F10: case Keys.F11: case Keys.F12: case Keys.Tab: case Keys.Pause: case Keys.CapsLock: case Keys.Kana: case Keys.Kanji: case Keys.Escape: case Keys.ImeConvert: case Keys.ImeNoConvert: case Keys.Space: case Keys.PageUp: case Keys.PageDown: case Keys.Select: case Keys.Print: case Keys.Execute: case Keys.PrintScreen: case Keys.Insert: case Keys.Help: case Keys.LeftWindows: case Keys.RightWindows: case Keys.Apps: case Keys.Sleep: case Keys.Multiply: case Keys.Add: case Keys.Separator: case Keys.Subtract: case Keys.Decimal: case Keys.Divide: case Keys.NumLock: case Keys.Scroll: case Keys.LeftShift: case Keys.RightShift: case Keys.LeftControl: case Keys.RightControl: case Keys.LeftAlt: case Keys.RightAlt: case Keys.BrowserBack: case Keys.BrowserForward: case Keys.BrowserRefresh: case Keys.BrowserStop: case Keys.BrowserSearch: case Keys.BrowserFavorites: case Keys.BrowserHome: case Keys.VolumeMute: case Keys.VolumeDown: case Keys.VolumeUp: case Keys.MediaNextTrack: case Keys.MediaPreviousTrack: case Keys.MediaStop: case Keys.MediaPlayPause: case Keys.LaunchMail: case Keys.SelectMedia: case Keys.LaunchApplication1: case Keys.LaunchApplication2: case Keys.OemSemicolon: case Keys.OemPlus: case Keys.OemComma: case Keys.OemMinus: case Keys.OemPipe: // \ case Keys.OemOpenBrackets: // [ case Keys.OemCloseBrackets: // ] case Keys.OemPeriod: case Keys.OemQuestion: case Keys.OemTilde: break; default: Console.WriteLine(keys[0]); break; } } } } else { _lastPressedKey = Keys.None; } }