在ASP.NET中自动生成详细信息字段

时间:2010-07-29 06:52:42

标签: asp.net

有没有基于SQLDataSource中的字段自动生成ASP.NET控件?通过将字段拖到窗体上,可以很容易地在WinForms中创建表单。您甚至可以确定将使用哪个控件(如下拉列表)。无论如何在ASP.NET中这样做?我不想要DetailsView,因为我需要创建单独的控件。

1 个答案:

答案 0 :(得分:1)

是的,您可以在运行时动态添加控件。

因此更容易说明XML示例而不是SQLDatasource。假设我有一个xml配置文件,我将用它来动态呈现我的控件。

您将控件附加到<asp:panel />

假设我有5个xmlNode对应于我想动态添加的5个控件(这里只显示一个),示例节点可以是:

<controls>    
<control id="txtFirstName" type="textbox" x="100" y="200" initialValue="overType me" />
</controls>

您的页面将在Xml文档中读取(或填充包含SQL数据库结果的数据集)并循环显示结果集:

For each node as xmlnode in myNodes 'myNodes used myXMLDocument.selectNodes()
  Dim myControl as Control



select case node.attributes("type").value
    case "textbox"
          myControl = new Textbox
    case "dropdownlist"
         myControl = new Dropdownlist
    End select

 myControl.ID = node.attributes("id").value
myControl.Attributes.Add("style", "position:absolute; top:" + node.Attributes("y").Value + "px; left:" + node.Attributes("x").Value + "px;")

 myPanel.Controls.Add(myControl)

Next

再次阅读它们并不容易,但如果您需要帮助,请告诉我.p