ASP.NET如何在运行时设置控件的位置?

时间:2010-04-15 14:01:23

标签: 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);

由于

更新: 我真的需要避免使用任何可以通过编辑服务器上运行的文件来改变的东西,这就是我在运行时尝试这样做的原因。

2 个答案:

答案 0 :(得分:3)

将PlaceHolder控件添加到您要添加标签的位置,然后将控件添加为PlaceHolder的子控件,例如。

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

然后......

LabelPlaceHolder.Controls.Add(lbl);

但是,通常,您希望避免在运行时动态添加控件。通过内联属性设置样式(使用CSS代替)。如果您只想在特定情况下显示标签,请将其Visible属性设置为False添加到页面中,然后将其设置为true,直到您想要查看它。

答案 1 :(得分:2)

我建议您使用CSS进行所有格式化等等 - 因此,在运行时,您所指定的只是控件的css类,让浏览器完成剩下的工作。