2010-04-15 81 views
2

我使用下面的代碼向頁面添加標籤,我將如何設置標籤的位置(即右上角)?ASP.NET如何在運行時設置控件的位置?

Label lbl = new Label(); 
lbl.Text = "Test"; 
lbl.ForeColor = System.Drawing.Color.Black; 
lbl.Font.Size = 10; 
lbl.Font.Bold = false; 
lbl.Font.Name = "Arial"; 
Page.Controls.Add(lbl); 

感謝

更新: 我真的需要避免使用任何可以通過編輯這就是爲什麼我想在運行時做到這一點的服務器上運行的文件來改變。

+0

如果您不想讓人們編輯您的ASPX文件,請考慮使用帶有「不可更新UI」選項的Web應用程序項目解決方案。請參閱http://www.asp.net/learn/hosting/tutorial-15-cs.aspx – 2010-04-15 14:47:40

回答

2

我建議你用CSS做所有的格式化操作 - 所以,在運行時你只需要指定一個控件的css類,然後讓瀏覽器完成剩下的工作。

+1

我同意這一點。把所有的樣式放在一個css文件中可以使網站的維護更容易。當人們從代碼隱藏中設置樣式時,我總覺得很煩人。 – 2010-04-15 14:15:25

3

將PlaceHolder控件添加到要添加標籤的位置的頁面中,然後將該控件作爲PlaceHolder的子控件添加,例如。

<asp:PlaceHolder ID="LabelPlaceHolder" runat="server"> 
</asp> 

然後......

LabelPlaceHolder.Controls.Add(lbl); 

一般,不過,在運行時動態添加控件是要避免的。就像通過內聯屬性設置樣式(使用CSS代替)。如果您只希望標籤在特定情況下出現,請將其添加到頁面,並將它的Visible屬性設置爲False,然後將其設置爲true以查看它。

+0

非常感謝,請參閱我上面的更新,基本上我想避免在aspx頁面添加任何東西。 – Jamie 2010-04-15 14:42:52

相關問題