OpenNETCF.IOC.(UI) ライブラリを使用する C# プロジェクト (.NET CF) があります。
実際の状況: ベース フォームでは OnKeyDown イベントが処理され、カスタム イベントを発生させることができます (たとえば、ユーザーが ESC ボタンを押した場合)。このイベントは、子孫フォームで処理できます。
リファクタリング後: ベース フォームはコンテナ フォームになりました。すべての子孫フォームが SmartParts になりました。カスタム イベントをコンテナ フォームから SmartParts にどのように発生させる必要がありますか?
// Base form
private void BaseForm_KeyDown(object sender, KeyEventArgs e)
{
// Handle ESC button
if (e.KeyCode == Keys.Escape || e.KeyValue == SomeOtherESCCode)
{
this.ButtonESCClicked(sender, new EventArgs());
}
}
// Descendant form
private void frmMyForm_ButtonESCClicked(object sender, EventArgs e)
{
this.AutoValidate = AutoValidate.Disable;
...
}