[英]ASP.NET Can't dynamically add new controls to the page
我想向頁面動態添加一些FileUploads
並對其進行回發控制,因為如果使用純HTML標記而不是asp.net控件,則可能導致文件上傳出現問題。
我已經在ASPX
頁面中定義了面板:
<asp:Panel ID="panelViewer" BackColor="Azure" Width="400" Height="400" runat="server">
</asp:Panel>
並且在<% %>
標簽中嘗試動態添加正確數量的文件上傳表單。 文件上載表格的數量取決於表中的MySQL記錄,對於用戶而言可能有所不同。
我試圖動態添加,所以只是為了開始:
Button btn = new Button();
btn.Text = "click me!";
panelViewer.Controls.Add(btn);
FileUpload fileUpload = new FileUpload();
fileUpload.BorderColor = System.Drawing.Color.Red;
panelViewer.Controls.Add(fileUpload);
但是沒有成功,當我在服務器的HTML響應中按Ctrl + U
時,我得到了:
<div id="panelViewer" style="background-color:Azure;height:400px;width:400px;">
</div>
HTML響應中沒有控件,因此服務器呈現的頁面中也沒有控件。
我嘗試過不使用早期定義的面板,而是將其動態添加到runat form
,但結果相同。
我該如何解決這個問題? 謝謝!
嘗試將btn.ID
包含為控件的屬性。
你可以用這個
Style style = new Style();
style.BorderColor = System.Drawing.Color.Red;
fileUpload.ApplyStyle(style);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.