如何在基于XML的C#中创建动态表单

时间:2013-04-21 13:09:12

标签: xml forms c#-4.0 dynamic

我想在C#中基于XML创建动态窗体。 我想使用xmlTextReader类,并使用while(reader.read())函数,该函数将遍历XML的内容并创建表单。 它应该很简单(超级简单!!) 例如,如果我的XML包含:

 <TITLE>
  <Field>
    <field_name>Tom</field_name>
    <field_type>textbox</field_type>
    <is_mandatory>1</is_mandatory>
  </Field>
</TITLE>

这意味着我需要一个名为“Tom”的文本框,它应该是必需的。 如果我要创建更多“Field”元素,它将在文本框下面创建另一个元素。

你能给我一个如何做的示例代码吗?

感谢!!!

2 个答案:

答案 0 :(得分:1)

听起来你想要某种动态表单生成。您可以使用FormFactory之类的东西从XML模式构建表单,而不是重新发明轮子。 (请参阅以编程方式创建表单的最后一个示例)

答案 1 :(得分:0)

要回答你的问题,我需要写一个规范。只有你知道你想要什么功能。

  • 选择一项技术(asp.net,winforms,silverlight,WPF,what-ev)
  • 选择一个用于解析XML的库。
  • 遍历XML文档。
  • 在某些大的switch语句
  • 上吐出新的Label()和新的TextBox()
  • 决定如何模板化和设计所有这些。
  • 做一些数据绑定。

我建议使用Joel Spolskys模板来制定规范,因为它是流程和语用之间的最佳平衡。大多数规范模板往往是非实用的和纯粹的过程。