我有一个自定义用户控件并已覆盖其Font属性。
当我将usercontrol的副本放到表单上时,我可以设置Font属性,但是我没有看到我为表单设计器文件中显示的'Font'设置的值。当我编译/运行我的应用程序时,我输入的值丢失了。
请注意,我也想覆盖Text属性,并且在设计器文件中也看不到它的设置值 - 直到我在这里找到答案来帮助这样做(我需要设置'DesignerSerializationVisibility '和'EditorBrowsable'属性)。我试过为Font做同样的事情,但无济于事。有什么想法吗?
private Font _Font = UserControl.DefaultFont;
[Description("Sets the font of the button caption"),,
Browsable(true),
Bindable(true),
EditorBrowsable(EditorBrowsableState.Always),
DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
public override Font Font
{
get { return _Font; }
set
{
_Font = value;
}
}
答案 0 :(得分:3)
将您的代码更改为:
public UserControl1()
{
InitializeComponent();
base.AutoScaleMode = AutoScaleMode.None;
}
[Description("Sets the font of the button caption")]
public override Font Font
{
get { return _Font; }
set { _Font = base.Font = value; }
}