Как сообщить разработчику значение по умолчанию для свойства, если оно не относится к типу, поддерживаемому DefaultValue()
?Например, Padding
или Font
.
Обычно при использовании элемента управления Windows Forms значения по умолчанию отображаются обычным шрифтом в окне «Свойства» и изменяются (не по умолчанию).) значения будут выделены жирным шрифтом.Например,
В этом примере значением по умолчанию ShowAddress
является false
, а значением по умолчанию ShowName
является true
.Этот эффект достигается с помощью следующего:
[DefaultValue(false)]
public bool ShowAddress {
get { return mShowAddress; }
set {
mShowAddress = value;
Invalidate();
}
}
[DefaultValue(true)]
public bool ShowName { ... }
Однако, когда я попытался что-то сделать для Padding
, я с треском провалился:
[DefaultValue(new Padding(2))]
public Padding LabelPadding { ... }
Что, конечно, не скомпилируется.
Как, черт возьми, мне это сделать?