When the InputGesture associated with a InputBinding is performed, the ICommand associated with the InputBinding is executed.
An InputBinding can be defined on a specific object or at the class level by registering a RegisterClassInputBinding with the CommandManager.
The InputBinding class itself does not support XAML usage, because it does not expose a public default constructor (there is a default constructor, but it is protected). However, derived classes can expose a public constructor and thus can set properties on the derived class that are inherited from InputBinding with a XAML usage. Two existing InputBinding derived classes that can be instantiated in XAML and can set properties in XAML are KeyBinding and MouseBinding. The typical property in WPF programming that is set in XAML and takes one or more InputBinding objects as values is the UIElement..::.InputBindings property.