IKeyboardInputSink.TranslateAccelerator(MSG, ModifierKeys) Method


Processes keyboard input at the keydown message level.

 bool TranslateAccelerator(System::Windows::Interop::MSG % msg, System::Windows::Input::ModifierKeys modifiers);
public bool TranslateAccelerator (ref System.Windows.Interop.MSG msg, System.Windows.Input.ModifierKeys modifiers);
abstract member TranslateAccelerator : MSG * System.Windows.Input.ModifierKeys -> bool
Public Function TranslateAccelerator (ByRef msg As MSG, modifiers As ModifierKeys) As Boolean



The message and associated data. Do not modify this structure. It is passed by reference for performance reasons only.


Modifier keys.


true if the message was handled by the method implementation; otherwise, false.



The message must either be WM_KEYDOWN or WM_SYSKEYDOWN.

If the component is unable to handle the input translations and has child components that might have translations, it typically calls TranslateAccelerator method on the child component that holds the current focus before returning a result.

If the message cannot be handled immediately, you can re-dispatch it from within the TranslateAccelerator implementation if necessary, and then return false.

A primary scenario for translating accelerator keys is handling the VK_TAB keydown message and determining whether to set focus within the component, to call TabInto to a child component, or to call OnNoMoreTabStops on the parent site because the tab sequence has reached the beginning or end bounds. Certain components may choose to not handle the tab key in this fashion.

Applies to

See also