2013-05-08 27 views
0

我正在製作一個應用程序,該程序將從模板中生成SQL腳本,並從用戶處獲取不同字段的輸入。C#可以在xml文件中讀取以在運行時更改其gui

有很多模板,所以GUI需要調整用戶將填寫的字段。爲了保持這種可擴展性,我寧願不將GUI編碼到程序中,而是希望從XML文件中讀取數據,並根據用戶選擇的模板進行更改。

這是首選,因爲如果出現新模板,那麼程序需要的所有內容都是與模板對應的XML文件。實際的代碼不需要改變。 我有我的眼睛設置使用C#爲此,因爲我有良好的使用經驗。 雖然我接受其他語言的建議。

編輯:這是一個工作項目,我想確保C#可以實現這一點,然後說服我的僱主擴展到使用C#。

+0

當然,你可以用c#來做到這一點。 – Martin 2013-05-08 21:37:48

+0

當然這是可能的。爲什麼不呢?你能描述你遇到的問題嗎? – 2013-05-08 21:38:41

+0

你在找什麼叫做WPF。去谷歌上查詢。 – 2013-05-08 22:44:50

回答

-1

任何語言都可以做到這一點。它更多的是關於設計模式而不是特定的技術。

如果你的意思是隻用聲明和XML編寫一個GUI,那麼沒有。你必須編寫自己的解析和GUI組裝代碼。

+0

你可以擴展你的意思嗎?「只用聲明和XML編寫GUI」? – Wusiji 2013-05-08 21:47:03

+0

我的意思是告訴框架通過給它一個XML文件作爲輸入來呈現表單。就像'Form f = new Form(「pathToXml」);'並期待它的工作。沒有課,至少沒有我知道的,那樣做......我可能有些生疏,但。但據我所知,您必須編寫自己的代碼來解析XML,並根據您得到的結果,將正確的控件添加到正確的位置。 – Renan 2013-05-08 21:57:04

+0

@Renan完全不正確。 WPF是基於XAML(XML)的,那麼你實際上可以從磁盤上抓取一個XAML文件,並用'XAMLReader'將它解析成一個有用的UI。 – 2013-05-08 22:43:03

0

你可以通過繼承Windows.Forms.Form並添加一個構造函數來接受你的XML文件作爲參數來做這種事情。爲您的XML文件添加一個解析器,該解析器將解釋您希望將標籤和字段添加到一致的表單設計中的指令(例如,左側的字段名稱和右側的實際輸入字段的標籤可以輕鬆實現通過用TableLayoutPanel填充表單)。你只需要從一開始就設計你的設計約束並堅持下去。

這實際上是Visual Studio在通過設計器創建表單時所做的工作,所以我建議您首先手動創建一個示例表單,然後查看它放置在表單的designer.cs中的代碼類型文件

相關問題