LoginSignup
2
2

More than 1 year has passed since last update.

C#のユーザーコントロールにカスタムイベントを追加する

Last updated at Posted at 2023-03-22

1. はじめに

  • C#で作成したユーザーコントロールを使用する側でイベントを定義したい
  • そのため、ユーザーコントロールにカスタムイベントを作成したい

2. 開発環境

  • C#
  • .NET 6
  • Visual Studio 2022
  • Windows 11

3. ユーザーコントロールの作成

3.1. ユーザーコントロールの追加

  • プロジェクトを右クリックして[追加] > [ユーザーコントロール]を選択する
    image.png

  • 任意のファイル名を入力した追加ボタンをクリックする
    image.png

3.2. ユーザーコントロールの作成

  • 仮にツールボックスからボタンを配置する
    image.png

  • ボタンコントロールをダブルクリックする
    image.png

  • カスタムイベントを追加する

public partial class UserControl1 : UserControl
{
    public UserControl1()
    {
        InitializeComponent();
    }

    // デリゲート設定
    public delegate void Button1ClickEventHandler();
    // Button1クリック時のイベント作成
    public event Button1ClickEventHandler Button1ClickEvent;

    /// <summary>
    /// Button1クリック時
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    private void button1_Click(object sender, EventArgs e)
    {
        Button1ClickEvent?.Invoke();
    }
}

3.3. ツールボックスへの反映

  • 作成したユーザーコントロールをツールボックスに反映するため、[ビルド] > [ソリューションのリビルド]を選択する
    image.png

4. ユーザーコントロールの使用

  • フォームに作成したユーザコントロールを配置する
    image.png

image.png

  • 配置したカスタムコントロールのイベントプロパティにカスタムイベントが追加されたことを確認する
    image.png

  • フォームでカスタムイベントにコードを記載する
    image.png

5. 動作確認

  • フォームで記述したコードが動作したことを確認した
    image.png

6. 参考文献

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2