- - PR -
ButtonのUseVisualStyleBackColorをfalseにする方法
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2007-04-09 19:58
UseVisualStyleBackColorのデフォルト値がfalseのButtonを作ろうと思い
下記のようなクラスを書きました。 public class CustomButton : Button { public CustomButton() { UseVisualStyleBackColor = false; } } ですが、フォームに貼り付けるとDesignerソースの中で this.customButton1.UseVisualStyleBackColor = true; と記述されてしまいます。 この解決方法をご存じの方がいたらぜひご教授いただきたいです。 よろしくお願いいたします。 | ||||
|
投稿日時: 2007-04-09 21:06
UseVisualStyleBackColor プロパティが存在するということは C#2.0 ですよね? おそらく、デザイナによって初期化されているのだと思います。 System.Windows.Forms.Design.ControlDesigner.InitializeNewComponent メソッド あたりを調べると良いでしょう。(手元に環境がないため未検証です) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2007-04-09 21:25
じゃんぬねっとさん
ご返答ありがとうございます。 C#2.0です。 環境を書くのを忘れていました。 失礼いたしました。 ご示しの通りSystem.Windows.Forms.Design.ControlDesigner.InitializeNewComponent がそれでした。 さきほどのコードを下記のように修正したらうまくいきました。 素早い回答ありがとうございました。 [Designer(typeof(CustomButtonDesigner))] public class CustomButton : Button { public CustomButton() { UseVisualStyleBackColor = false; } } public class CustomButtonDesigner : ControlDesigner { public override void InitializeNewComponent(System.Collections.IDictionary defaultValues) { defaultValues["UseVisualStyleBackColor"] = false; base.InitializeNewComponent(defaultValues); } } |
1