ユーザー コントロール階層へのイベントの受け渡し
カスタム ユーザー コントロールでは、コントロール内で発生したイベントをメイン コントロールにアクセスできるようにすることが望ましいことがよくあります。形状。これは、数値アップダウン コントロールでの値の変更など、サブコントロールから発生するイベントを処理しようとすると顕著になります。
イベント ハンドラーの作成
これに対処するにはチャレンジでは、目的のイベントが発生したときにトリガーされるイベント ハンドラーをユーザー コントロール内に作成します。このイベント ハンドラーは、イベントをフォームに「バブルアップ」して、イベントを処理できるようにする必要があります。
サンプル コード
「Button1」という名前のボタンを持つユーザー コントロールを考えてみましょう。 ":
ユーザー コントロール:
[Browsable(true)] [Category("Action")] [Description("Invoked when user clicks button")] public event EventHandler ButtonClick; protected void Button1_Click(object sender, EventArgs e) { //bubble the event up to the parent if (this.ButtonClick!= null) this.ButtonClick(this, e); }
メインフォーム:
UserControl1.ButtonClick += new EventHandler(UserControl_ButtonClick); protected void UserControl_ButtonClick(object sender, EventArgs e) { //handle the event }
Notes
以上がユーザー コントロールからその親フォームにイベントを渡すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。