【问题标题】:Arranging dynamically created controls on a web form在 Web 表单上排列动态创建的控件
【发布时间】:2010-10-21 21:37:45
【问题描述】:

如果涉及网站开发,我是新手。我想创建一个包含在 XML 文件中定义的控件的 Web 表单。这意味着我将在 Page_Load 函数中读取 XML 文件,并按照文件中的定义动态创建和命名所有控件。这看起来很容易。

但是,我还有另一个问题,即布局。当我在表单中添加一个新控件时,它会放置在之前创建的控件旁边。如何将它们放在另一个下方或在它们之前和之间放置一些空格?我认为使用 PlaceHolder 控件会对我有所帮助,但我找不到任何可以更改其父控件位置的属性。

这是我创建单个控件的方法:

Label lbl = new Label();
lbl.ID = "lbl";
lbl.Text = "Test";
PlaceHolderMain.Controls.Add(lbl);

提前感谢您的帮助,

马吕斯。

【问题讨论】:

    标签: asp.net dynamic layout controls


    【解决方案1】:

    你有几个选择:

    1. 在已添加的控件之间添加其他控件,例如 Literal 控件,其中文本是您想要的 HTML,例如 <BR/> 标记或 nbsp;
    2. 每个适当的部分都有多个占位符控件。
    3. 使用 CSS 将控件放置在您想要的位置。我不是 CSS 专家,但这可以做到,但需要了解 CSS 定位。
    4. 将控件添加到父控件(例如表格)中,以便您可以将控件添加到行内的表格单元格中。这意味着创建行和单元格以添加到表格中,但它可以让您更好地控制布局。

    希望这能给你一些可以帮助的想法。

    【讨论】:

    • 我认为这几乎涵盖了大多数可用选项。很好的答案! +1
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-03-25
    • 1970-01-01
    相关资源
    最近更新 更多