2011-05-30 43 views
4

我想從代碼隱藏中將新的文本框服務器控件添加到我的頁面。從代碼後面添加文本框服務器控件?

TextBox txt=new TextBox(); 
txt.Width=100; 
txt.Height=100; 

Page.Controls.Add(txt); 

當我寫下面的代碼,將引發此錯誤:

「類型‘文本框’的控制‘ctl02’必須放在一個窗體標記內與RUNAT =服務器」。

這個錯誤是什麼原因引發的?這應該怎麼做?

回答

5

裏面的表格,你可以把一個佔位符的位置,你想這個文本框出現:

<form runat="server"> 
    ... 
    <asp:PlaceHolder ID="holder" runat="server" /> 
    ... 
</form> 

,然後將文本框添加到該佔位符:

TextBox txt = new TextBox(); 
txt.Width = 100; 
txt.Height = 100; 
holder.Controls.Add(txt); 
4

錯誤消息告訴您必須將TextBox控件添加到頁面中的<form>元素中,而不是頁面本身。請嘗試:

Page.Form.Controls.Add(txt); 
+0

我明白了......感謝您回答FrédéricHamidi。 – Zoro 2011-05-30 15:48:30

+0

對挖掘恐龍感到抱歉,但是可以用HTML包裝這些東西嗎?這個工程,但我希望能夠把表格放入一個表格,所以它的格式很好 – 2016-03-18 14:30:06

+0

@丹,絕對可以將'

'元素嵌套在頁面標記中的''元素中。它應該工作得很好。 – 2016-03-18 14:35:59

相關問題