ホームページ > バックエンド開発 > C++ > メイン フォームでカスタム ユーザー コントロール イベントを処理するにはどうすればよいですか?

メイン フォームでカスタム ユーザー コントロール イベントを処理するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2025-01-04 19:30:39
オリジナル
1014 人が閲覧しました

How Can I Handle Custom User Control Events in My Main Form?

メイン フォーム処理用のカスタム ユーザー コントロール イベント

カスタム ユーザー コントロールの開発では、コントロール内でイベントが発生する必要がある状況が発生することがあります。メインフォームで処理されます。たとえば、ユーザー コントロールの数値アップダウン コントロールの「ValueChanged」イベントを登録すると、メイン フォームの表示ウィンドウの更新がトリガーされる可能性があります。

これを実現するには、イベント ハンドラーを作成する必要があります。内部イベントが発生したときに呼び出されるユーザー コントロール。これにより、イベントを上向きにバブリングしてメイン フォームで処理できるようになります。

次の例を考えてみましょう:

ユーザー コントロール コード:

[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
    ButtonClick?.Invoke(this, e);
}
ログイン後にコピー

メインフォームコード:

UserControl1.ButtonClick += new EventHandler(UserControl_ButtonClick);

protected void UserControl_ButtonClick(object sender, EventArgs e)
{
    // Handle the event
}
ログイン後にコピー

メモ:

  • 新しい Visual Studio バージョンでは、より簡潔な構文: ButtonClick?.Invoke(this, e) が提供されます。 ; if (this.ButtonClick != null) this.ButtonClick(this, e);.
  • の代わりに、Browsable、Category、Description などの属性を使用して、Visual Studio デザイナーでイベントの可視性とメタデータを構成します。オプションではありますが、ユーザー エクスペリエンスが向上します。

以上がメイン フォームでカスタム ユーザー コントロール イベントを処理するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート