查看状态不保留值

时间:2011-01-07 21:26:07

标签: c# asp.net viewstate

我试图通过以下方式使用视图状态保留控件的“可见”属性

public bool showstatusbox {
    get { return Convert.ToBoolean(ViewState["statusbox"]); }
    set { ViewState["statusbox"] = value; }
}

除此之外我还有什么办法可以保留价值。因为,虽然我将值存储在视图状态中,但在回发时,它变为空。

2 个答案:

答案 0 :(得分:1)

您是否确认控件的EnableViewState为真?

答案 1 :(得分:0)

我记得遇到过这方面的问题并使用以下代码解决了这个问题:

protected override object SaveViewState()
{
    return new object[] { 
        TaxRate, 
        SubTotal, 
        Tax, 
        LetterId, 
        ActivityIds, 
        AssociateLettersToInvoice 
    };
}

protected override void LoadViewState(object savedState)
{
    var array = (object[])savedState;
    TaxRate = (decimal)array[0];
    SubTotal = (decimal)array[1];
    Tax = (decimal)array[2];
    LetterId = (int?)array[3];
    ActivityIds = (string)array[4];
    AssociateLettersToInvoice = (bool)array[5];
}