2011-05-27 27 views
0

有沒有一種快速簡便的方法來製作VB.NET用戶界面來管理規範化數據集中的數據?是否有用於管理數據集的VB.NET UI模板?

我知道這是一個非常主觀的問題,所以讓我解釋一下。在我職業生涯早期的短暫時間內,我曾經在Microsoft Access中創建用戶界面。我開發了一種簡單但非常有效的用戶界面設計方法。以下是該方法的一些詳細信息:

  • 爲每個表格創建一個表單。將 各表格全部組成 所需的全部控件完全管理 表中的一行。使用組合框 外鍵列。
  • 給用戶一種 標準的方式來添加行和刪除 行。
  • 使用應用和撤消按鈕。
  • 讓 用戶瀏覽行與 另一個與一個列表框。
  • 提供 更高效的導航 搜索框和過濾選項。
  • 讓 用戶雙擊表示外鍵列的控件 到 快速從一個表單導航到 另一個表單。
  • 使每個表單的狀態 持久(這樣用戶總是 返回到最後導航點)

簡單,對不對?我發現Access鼓勵這種方法。它有許多內置的功能,使這種用戶界面變得簡單。例如,創建組合框來表示外鍵關係需要大約10秒。

那麼,我沒有在Access工作了一段時間。然而,幾年前,我被僱用在.NET 2.0框架上的VB.NET中編寫應用程序。爲了快速啓動數據管理用戶界面,我使用Access體驗在Access中編寫了一個簡單的原型 - 這花了我大約一週的時間。然後我聘請了一名程序員在VB.NET中實現相同的UI。什麼樣的惡夢!我們一直在爲這一實施工作一年,對結果仍然很不滿意。我們遇到的一些問題:

  • 應用和撤銷按鈕不能正常工作。我們無法找到一個事件,告訴我們表單何時「髒」(從而使「應用」和「撤消」相關)。
  • 從行到行以及從表單到表單的導航需要令人驚訝的複雜代碼。我覺得我們正在與.NET的綁定功能作鬥爭,而不是像他們打算使用的方式一樣工作。
  • NET控件似乎是越野車。例如,當用戶在組合框中鍵入一個值(而不是從下拉菜單中選擇它)時,它不會觸發SelectedValueChanged事件。
  • 我們似乎重複了很多信息。例如,DataSet知道兩個表中的列之間存在關係,但是當我們編程組合框,綁定,導航功能等時,我們仍然必須有效地重複該關係的細節。
  • 我們仍然沒有很好的濾鏡和搜索功能。有很多小細節需要解決。 (例如,如果選擇一個不包含當前顯示行的過濾器,會發生什麼情況?)
  • 我們正在編寫許多幫助函數和類來簡化工作,但我無法弄清楚爲什麼這種努力沒有已經由其他人完成 - 我確信我們正在重新發明輪子。

本身並沒有上述的是一個大問題 - 有每一個有效的解決方案。但是,總的來說,這些問題正在使我的UI開發速度比預期慢得多。

在一個理想的世界中,我應該能夠創建與我的特定數據模型相關的少量代碼(例如,每個表創建與該表中的行相關的佈局和邏輯的一個用戶控件),然後集成將代碼轉換爲解釋數據模型並處理其他所有內容的模板 - 導航,添加和刪除,應用和撤消,搜索和過濾等。

因此,我的問題:是否有任何使這種類型的UI開發更容易?

我在網上搜索了「通用形式」,「UI模板」,「數據管理表單」等的各種組合,但是我沒有找到關於主題的任何內容。也許我只是不知道流行語。這種類型的UI開發任務是否有特定的名稱?

+0

Winform Or Webform? – Shahin 2011-05-27 18:01:38

+0

Windows窗體。 – Todd 2011-05-27 18:06:39

回答

1

爲每個表格創建UCs。將網格控件拖放到UC上,並使用VS的嚮導將其綁定到表數據集。選擇允許插入,更新,刪除的選項。網格上的每一行都會自動爲您添加這些按鈕/操作。

+0

通過UI頂部的按鈕使用事務來觸發或回滾提交。 – SlowBoat 2012-01-01 00:21:45

相關問題