【问题标题】:Mapping xml screen to a form将 xml 屏幕映射到表单
【发布时间】:2010-11-03 15:12:47
【问题描述】:

我需要为 C# 3.5/winforms 应用程序设计一个 .Net 表单。此表单将使用户能够手动输入数据,并在单击此表单上的保存按钮时,将生成一个 xml,其架构如下所示:

<Request ID="1" Type="testType" requestedBy="admin" Date="20081128 19:30:00" date="20100122 00:00:00">
<List>
<Data name="A" date="04/27/2009" region="NA" /> 
  <Data name="B" userName="johnc" /> 
  <Data name="C" date="04/27/2009" region="TR" /> 
  <Data name="D" date="04/27/2009" region="NA" /> 
  <Data name="E" file="C:\Test\ABC.txt" outFile="C:\Test\ABCOut.txt" businessDate="04/27/2009" userName="testuser1"/> 
  <Data name="F" file="C:\Test\EFG.txt" outFile="C:\Test\EFGOut.txt" businessDate="05/21/2009" userName="testuser2"/> 
</List>
</Request>

此表单的设计应该是用户友好且直观的,因为它也可供非 IT 用户使用。

这个 xml 有各种数据节点,每个节点都有不同的属性集。 具有相同数量的不同值的属性的数据节点可以重复[例如:名称为“E”和“F”的数据节点]

只是想知道这种表单设计的最佳方式是什么?

我要不要在winform的顶部放一个下拉列表,它会显示不同数据节点名称的列表[A,B.C...]? 然后更改此下拉列表中的项目将动态更改下面的表单。 例如:在 ddList 中选择 C ​​将显示日期和区域的文本框......同样...... 或者在这种情况下如何使用gridview?

请提出建议。

感谢阅读。

【问题讨论】:

  • 你将很难用这个 xml 做任何合理的事情。这在以前已经做过了,它被称为 WPF。

标签: xml winforms user-interface


【解决方案1】:

无论你是否是 WPF 的 WinForms,你都应该很容易将 DataLayer 转换为 xml。

  • 获取xml的schema(xsd一)并使用Visual Studio xsd工具,将其转换为C#类;
  • 然后您可以围绕 DataLayer 设计您的 GUI,当您想要持久化(保存)时,您可以使用 XmlSerializer 来为您工作。
  • 这样您就可以使用 DataLayer 而不必担心持久性,因为它将基于您的合同/请求的 Xml 架构

【讨论】:

    猜你喜欢
    • 2011-08-11
    • 1970-01-01
    • 2011-04-11
    • 2015-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多