キーボードのエスケープ キーを使用して、アクティブな mdi 子フォームを閉じる必要があります。次のコードは、アクティブな子を閉じますが、例外をスローします (オブジェクト参照がオブジェクトのインスタンスに設定されていません)。
protected override bool ProcessCmdKey(ref Message msg, Keys keyData)
{
if (keyData == Keys.Escape && this.ActiveMdiChild != null) //close child
{
this.ActiveMdiChild.Close();
}
else if (keyData == Keys.Escape) //exit app
{
this.Close();
}
else if (keyData == Keys.Insert) //open add form
{
throw new NotImplementedException();
}
return base.ProcessCmdKey(ref msg, keyData);
}
何を変更する必要がありますか? ありがとう