我有一個ASP.NET頁面,我可以動態創建超過1000個文本框。該頁面的初始創建和顯示正常工作,但是當我做一個posback時,我發現控制狀態(Text)僅在第一個997文本框中被恢復。所有其他文本框的文本特性在回發期間不會恢復。ASP.Net在回發期間丟失文本框值,當您有大量文本框時
我沒有看到任何錯誤 - 我只是看到文本框是空白的。
有沒有其他人支持過這個問題。在具有大量控件或大視圖狀態的頁面上,我需要做些什麼特殊的事情?
下面是一些代碼來演示。
public partial class Test : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
}
void CreateTextBoxes(bool load)
{
for (int i = 0; i < 1200; i++)
{
TextBox txt = new TextBox();
txt.ID = string.Format("{0}", i);
div.Controls.Add(txt);
if (load)
txt.Text = string.Format("Count {0}", i + 1);
}
}
protected override void CreateChildControls()
{
CreateTextBoxes(!this.IsPostBack);
base.CreateChildControls();
}
}
什麼發生在第998個文本框,你可以把一個斷點plz – Marc 2012-02-24 01:10:20
我不能重新創建問題。我不得不將這添加到web.config文件中,以便顯示包含超過1000個控件的頁面,儘管** appSettings> ** –
jmaglio
2012-02-24 01:34:08
完美的修復它。知道這是這樣的事情,但我只是沒有找到設置。感謝堆。 – 2012-02-24 01:40:26