2011-04-03 119 views
0

我嘗試多種方法可以創建在.aspx頁面的代碼隱藏一些控制。我有這些問題:在aspx中動態創建控件?

1)每個組件的名稱
2)地方這些組件的
3)訪問的方法事件或全部在後面

代碼這些組件我想創造一些<asp:textbox>並把它們放在表格行中。然後,我希望能夠獲得這些文本框的價值,並與他們一起完成任務。

回答

2

嘗試在Retaining State for Dynamically Created Controls in ASP.NET applications這個演示。

它是關於如何將控件添加到頁面,並有後續的回傳認識你之前修改一個非常簡單的演示。基本上,文本框的數量保存爲ViewState。它將循環創建n文本框。

您可以修改,以適應不同的控制和命名方案,只要你喜歡。如果你喜歡,你也可以改用Session

的修改你可能想:

private void createControls() 
{ 
    int count = this.NumberOfControls; 

    for(int i = 0; i < count; i++) 
    { 
     TextBox tx = new TextBox(); 
     tx.ID = "ControlID_" + i.ToString(); 

     //Add the Controls to the container of your choice 
     MyContainer.Controls.Add(tx); 
    } 
} 
+0

這就是你鏈接到一個很好的例子。非常簡潔,它避免了我個人無法忍受的PreInit廢話。 – Graham 2011-04-25 13:43:29