我有一个用户控件,其中包含以下自定义属性:
[DefaultValue(true)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Visible)]
[Description("Gets or sets whether the \"Remove\" button is visible.")]
public bool ShowRemoveButton
{
get
{
return this.removeButton.Visible;
}
set
{
this.removeButton.Visible = value;
}
}
该控件包含一个标准的按钮控件。该属性用于显示或隐藏按钮。用户控件是在单独的项目程序集中构建的。我将其放置在一个表单上,可以设置和取消上述属性,一切似乎都正常工作。然而,当包含用户控件的项目被重建时,属性值会翻转为“false”,这不是默认值。
如何防止自定义属性在重建控件时失去/更改其状态?
removeButton.Visible
属性的地方。它可能隐藏在自动插入的"*.Designer.cs"文件中,而你无法看到它。 - Cody Gray