UserControlでカーソルキー押下を処理する |
FormだとOnKeyDown等でカーソルキーの押下を処理できるのですが、UserControlではカーソルキー押下イベントが取れません。UserControl内でカーソルキーを処理する場合はProcessCmdKeyをオーバーライドします。
// ProcessCmdKeyのオーバーライド protected override bool ProcessCmdKey( ref Message msg, Keys keyData ) { const int WM_KEYDOWN = 0x100; if ( msg.Msg == WM_KEYDOWN ) { if ( keyData == Keys.Left ) { // // カーソルキーの処理を記述 // return ( true ); } return ( base.ProcessCmdKey( ref msg, keyData )); } } |