Form.ProcessCmdKey Method

Processes a command key.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in

virtual bool ProcessCmdKey (
	Message% msg, 
	Keys keyData
) override
protected boolean ProcessCmdKey (
	/** @ref */ Message msg, 
	Keys keyData
Not applicable.



A Message, passed by reference, that represents the Win32 message to process.


One of the Keys values that represents the key to process.

Return Value

true if the keystroke was processed and consumed by the control; otherwise, false to allow further processing.

The ProcessCmdKey method overrides the base

ContainerControl.ProcessCmdKey implementation to provide additional handling of main menu command keys and MDI accelerators.

For information about trapping keystrokes, see "HOW TO: Trap Keystrokes in .NET Controls by Using Visual C# .NET" and "HOW TO: Trap Keystrokes in .NET Controls by Using Visual Basic .NET" in the Microsoft Knowledge Base at

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

.NET Framework

Supported in: 3.0, 2.0, 1.1, 1.0