--- lang: ja-jp breaks: true --- # C# WinForm デザイナクラスに初期値のプロパティを生成しない方法 2022-02-14 ```csharp= /// <summary> /// 本コントロールのフォントを取得・設定します。 /// </summary> [Category("カスタム")] [Description("本コントロールのフォントを取得・設定します。")] public new Font Font { get { return base.Font; } set { base.Font = value; } } private bool ShouldSerializeFont() { return base.Font != FontDefault.FontControl; } ``` :::info `ShouldSerialize` + プロパティ名でメソッドを作成する。 ::: ```csharp= public static readonly Font FontControl = new Font("MS UI Gothic", 9F, FontStyle.Regular, GraphicsUnit.Point, ((byte)(128))); ``` :::info 定数値をデフォルトにする場合は、通常 `[DefaultValue(***)]` 属性で設定する。 ::: ###### tags: `WinForm` `C#` `ShouldSerialize`