2010-11-03 89 views
1

我需要爲C#3.5/winforms應用程序設計一個.Net表單。此表單將使用戶能夠手動輸入數據,並單擊此表單上的保存按鈕,將生成一個xml模式如下所示:將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?

請建議。

感謝您的閱讀。

+1

你也很難做什麼合理與該XML。這已經完成了,它被稱爲WPF。 – 2010-11-03 15:37:27

回答

0

無論您是否使用WPF的WinForms,都應該很容易將DataLayer轉換爲xml。

  • 獲取xml(xsd one)的架構並使用Visual Studio xsd工具將其轉換爲C#類;
  • 然後,您可以圍繞DataLayer設計GUI,並且當您想要保存(保存)時,您可以使用XmlSerializer來爲您工作。
  • 這樣,你就對着幹數據層和不擔心持久性,因爲它會根據你的合同/請求XML模式