正如我的标题所说,我有一个固定的财产崩溃问题。
以下是该方案:
System.Web.UI.WebControls.Style
的属性除外。这是我的财产:
[Bindable(true)]
[Category("Appearance")]
[Description("The style for the header")]
[Localizable(true)]
public Style HeaderTextStyle
{
get
{
Style s = (Style)(ViewState["HeaderTextStyle"] == null ? Styles.defaultHeaderStyle : ViewState["HeaderTextStyle"]);
return s;
}
set
{
ViewState["HeaderTextStyle"] = value;
}
}
哦,Styles.defaultHeaderStyle
只是内部类的一个属性,它返回一个新的Style
。
让我指出悬挂/崩溃只发生在我改变属性时,因此它不能来自吸气剂。
我不会粘贴渲染控件,因为即使我没有渲染任何内容也会发生错误。
导致这种情况的原因是什么?
谢谢。
答案 0 :(得分:1)
我找到了问题的答案。
你知道, Style 类是一个具有子属性的属性,它被称为复杂属性。 复杂属性(具有子属性的属性)需要自定义状态管理才能使用视图状态。 Style类需要设计时属性以在控件的标记内启用持久性。所以我在原帖中写的内容不起作用。
如需完整说明,请访问:Server Control Properties Example from MSDN
我设法使用该示例实现它。我希望这对其他人有用。