如何摆脱ASP.NET页面的视图状态缓存

时间:2013-05-13 19:15:03

标签: c# asp.net postback viewstate

我使用代码在代码隐藏文件中组成一个动态表:

<table border="0" cellpadding="4" cellspacing="0">
<asp:PlaceHolder ID="PlaceHolder1" EnableViewState="false" runat="server"></asp:PlaceHolder>
</table>

以下是我在Page_Load()中构建它的方法:

System.Web.UI.HtmlControls.HtmlGenericControl trContainer0 = new System.Web.UI.HtmlControls.HtmlGenericControl("tr");
System.Web.UI.HtmlControls.HtmlGenericControl tdContainer00 = new System.Web.UI.HtmlControls.HtmlGenericControl("td");

//Time variable
DateTime dtDateTime0 = DateTime.Now();

//Time (must be localized)
TextBox tbxAtTime = new TextBox();
tbxAtTime.EnableViewState = false;
tbxAtTime.ID = "myTime1";
tbxAtTime.Text = dtDateTime0.ToShortTimeString();

tdContainer00.Controls.Add(tbxAtTime);
trContainer0.Controls.Add(tdContainer00);
PlaceHolder1.Controls.Add(trContainer0);

这会正确加载tbxAtTime文本框,但是当我从该页面上的自定义控件更改文化时,会发生问题,这会使其加载(通过post-back)。在这种情况下{{ 1}}文本框似乎保留了在初始加载页面时得到的旧值,即使我在代码中放置了一个断点,它也会显示新文本(根据新文化。)< / p>

那么这里的诀窍是什么?

0 个答案:

没有答案