我有一個包含所有其他控件的面板的自定義控件。控件處於兩種狀態之一,即編輯模式和正常模式。在編輯模式下,我希望控件具有不同背景色的選項。將顏色保存到ViewState
我:
在Pre_Render:
Panel1.BackColor = EditMode ? BackEditColor : BackColor;
而且控件的屬性:
[Bindable(true)]
[Category("Misc")]
[Description("The background color.")]
[DefaultValue("white")]
[Localizable(true)]
public Color BackColor
{
get { return Color.FromName(Convert.ToString(ViewState["BackColor"] ?? "white")); }
set { ViewState["BackColor"] = value.Name; }
}
[Bindable(true)]
[Category("Misc")]
[Description("The edit-mode background color.")]
[DefaultValue("#FFFFCC")]
[Localizable(true)]
public Color BackEditColor
{
get { return Color.FromName(Convert.ToString(ViewState["BackEditColor"] ?? "#FFFFCC")); }
set { ViewState["BackEditColor"] = value.Name; }
}
我可以設置通過控件的屬性沒有問題的顏色,但他們只表演作爲呈現白色。我應該如何保存/閱讀ViewState的顏色?
您是否驗證過調用Pre_Render方法? – StriplingWarrior