1つ前のエントリでBrowsable(false)にしてしまったGreetプロパティををBrowsable(true)に変更する。
隠したってしゃぁないしね。
さて、このユーザコントロールではGreetプロパティを設定してもらわないと何もはじまらない!
そんな重要なプロパティはデフォルトのプロパティにしてしまおう。
そのときに使う属性はこれだ。
DefaultPropertyAttribute
この属性をつけるとこんな感じのコードになる
namespace CustomControlTest { [DefaultProperty("Greet")] public partial class HelloControl : UserControl { public HelloControl() { InitializeComponent(); } private void button1_Click(object sender, EventArgs e) { MessageBox.Show(Greet); } #region プロパティ private string greet; [Category("表示")] [Browsable(true)] public string Greet { get { return greet; } set { greet = value; } } #endregion } }
ビルドしてデザイナ上で確認!!
特に何も変わらないような…
まぁいい。
と思ったら変わってた!
フォーム上に置いたコントロールを選択すると、Greetプロパティが一番に選択されている。
なるほどね。