1. ホーム
  2. c#

ユーザーコントロール - カスタムプロパティ

2023-09-23 04:21:17

質問

Visual Studio (WinForms C#) でユーザーコントロールを開発したのですが、質問があります。

ユーザーコントロールのユーザーが特定の文字列値を変更できるようにする必要があります。ユーザーコントロールをフォームに追加し、それをクリックして、ユーザーコントロールのカスタムプロパティが表示されるプロパティペインを表示できるようにしたいのですが、可能ですか?

ユーザーコントロールに独自のカスタムプロパティを設定するにはどうしたらよいですか。たとえば

私のユーザーコントロールはテキストボックスを含んでおり、ユーザーがデザイン時のプロパティで "Text"または "Value"という名前のプロパティを通してそのテキストボックスの値を変更できるようにしたいと思います。

どのように解決するのですか?

このように、プロパティの属性を使って行います。

[Description("Test text displayed in the textbox"),Category("Data")] 
public string Text {
  get => myInnerTextBox.Text;
  set => myInnerTextBox.Text = value;
}

カテゴリは、Visual Studioのプロパティボックスにプロパティが表示される見出しです。 以下は、より完全なMSDNリファレンスです。 で、カテゴリのリストを含んでいます。