Provides a keyboard sink for components that manages tabbing, accelerators, and mnemonics across interop boundaries and between HWNDs. This interface implements keyboard message management in WPF-Win32 interoperation scenarios.
Assembly: WindowsBase (in WindowsBase.dll)
Thetype exposes the following members.
|HasFocusWithin||Gets a value that indicates whether the sink or one of its contained components has focus.|
|OnMnemonic||Called when one of the mnemonics (access keys) for this sink is invoked.|
|RegisterKeyboardInputSink||Registers the interface of a contained component.|
|TabInto||Sets focus on either the first tab stop or the last tab stop of the sink.|
|TranslateAccelerator||Processes keyboard input at the keydown message level.|
|TranslateChar||Processes WM_CHAR, WM_SYSCHAR, WM_DEADCHAR, and WM_SYSDEADCHAR input messages before OnMnemonic is called.|
A keyboard sink handles input from particular subsets of the overall keyboard input model for Win32 and Windows Presentation Foundation (WPF), and enables some keyboard input to be processed and directed to HWNDs other than the one with current keyboard focus.
If your component contains other components, and maintains a tab order, your component must also implement IKeyboardInputSite and keep track of which component has focus.
For a discussion of the input architecture specifically implemented for Windows Forms interop, see Windows Forms and WPF Interoperability Input Architecture.
HwndSource and HwndHost each implement the interface, through explicit interface definitions. The explicit definitions supply default behaviors, and can also be accessed if necessary through an interface cast of HwndSource or HwndHost.