Yan
Yan

Reputation: 1444

save Load User Control Dynamic to viewstate

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 !

Upvotes: 1

Views: 1462

Answers (1)

Jørn Schou-Rode
Jørn Schou-Rode

Reputation: 38346

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; }
    }
}

Upvotes: 1

Related Questions