Microsoft.Xna.Framework.Input Namespace

Provides functionality to handle input from keyboards, mice, gamepads, etc.
  Platforms Name Description
GamePad Supports querying the game controllers and setting the vibration motors. 
Joystick Allows interaction with joysticks. Unlike GamePad the number of Buttons/Axes/DPads is not limited. 
Keyboard Allows getting keystrokes from keyboard. 
Mouse Allows reading position and button click information from mouse. 
MouseCursor Describes a mouse cursor. 
  Platforms Name Description
GamePadButtons A struct that represents the current button states for the controller. 
GamePadCapabilities A stuct that represents the controller capabilities. 
GamePadState Represents specific information about the state of the controller, including the current state of buttons and sticks. This is implemented as a partial struct to allow for individual platforms to offer additional data without separate state queries to GamePad. 
GamePadThumbSticks A struct that represents the current stick (thumbstick) states for the controller. 
GamePadTriggers A struct that countains information on the left and the right trigger buttons. 
JoystickCapabilities Describes joystick capabilities. 
JoystickHat Describes joystick hat state. 
JoystickState Describes current joystick state. 
KeyboardState Holds the state of keystrokes by a keyboard. 
MouseState Represents a mouse state with cursor position and button press information. 
  Platforms Name Description
ButtonState Defines a button state for buttons of mouse, gamepad or joystick. 
Buttons Defines the buttons on gamepad. 
GamePadDeadZone Specifies a type of dead zone processing to apply to Xbox 360 Controller analog sticks when calling GetState. 
GamePadType Defines a type of gamepad. 
KeyState Identifies the state of a keyboard key. 
Keys Defines the keys on a keyboard. 
Supported in:

 Windows DirectX Desktop
 Linux Desktop
 Windows OpenGL Desktop