views:

194

answers:

1

Hi,

i add user control dynamcly to the page and trying to save to viewstate when i triyed to save the placeholder to the view state i got this error " PlaceHolder is not mark as serializable."

here is my code

  Controls_PriceControl ctrl = (Controls_PriceControl)LoadControl("../Controls/PriceControl.ascx");
    plcPrices.Controls.Add(ctrl);

    ViewState["plcPrices"] = plcPrices;

can you assiset me with this issue ?

thanks !

+1  A: 

You shouldn't save your actual controls to the ViewState, but only th their state (usually the properties). Saving and loading control properties can often be done directly in the property declaration:

public class FooControl : Control
{
    public string Bar
    {
        get { return ViewState["Bar"] as string; }
        set { return ViewState["Bar"] = value; }
    }
}
Jørn Schou-Rode