2011-03-14 40 views
0

親愛的所有 我的許多形式的應用程序中有很多梳子盒,而且ecah應該填充數據庫中的項目 因此,我希望使存儲過程具有作爲參數傳遞的組合框名稱然後從任何形式調用它將組合框名稱傳遞給過程

我不知道如何通過它,作爲什麼類型? 請幫忙

回答

1

這聽起來好像你對這個問題的方法不是最優的。

「組合框」的概念通常不是你想要與數據庫結構糾纏在一起的東西。

設計您的應用程序的目的是將您的域的「概念」在一個應用程序層中建模爲類。如果某些數據經常需要,而且很少更改,則可能需要實施某些數據的緩存。隨後,您可以設計您的UI並將組合框與您的域模型公開的必需列表和集合關聯。

編輯:如果你真的想使用組合框的某些固有的方面作爲參數到數據庫(用於獲取項目),那麼我想你可以考慮使用該控件的Tag屬性。此策略允許您在相同的表單上擁有多個具有相同選項的組合框(如多個Yes/No或Opened/Closed組合框),而無需處理命名/唯一性衝突。

  • 創建一個方法,例如GetComboSourceData()這需要System.Windows.Forms.ControlCollection作爲參數。
  • 在此方法中,迭代控件,查找Comboboxes。如果他們設置了Tag屬性,則將此標記作爲參數發送到您的數據庫查詢。將返回的數據集作爲數據源分配給各個組合。
  • 加載您的表格時,請務必致電GetComboSourceData(this.Controls)填充您的組合。
+0

我知道這不是最好的方法,但我在一個非常非常緊張的時間表上,我需要找出一些東西,所以請你告訴我如何將組件名稱傳遞給一個過程。謝謝 – Amanda 2011-03-14 09:43:17