共用方式為


逐步解說:顯示 Windows 應用程式之表單上的相關資料

更新:2007 年 11 月

在許多應用程式案例中,會處理來自一個以上的資料表之資料,也經常會處理來自關聯資料表的資料。也就是說,您要使用父-子關係。例如,您可能想要建立一種表單,只要在表單上選取客戶資料錄時,就會顯示此客戶的訂單。在表單上顯示關聯資料錄的方式,是將子系 BindingSourceDataSource 屬性設為父代 BindingSource (而不是子資料表),並將子系 BindingSourceDataMember 屬性設為讓父資料表和子資料表繫結一起的資料關聯。

逐步解說將說明的工作包括:

  • 建立 [Windows 應用程式] 專案。

  • 使用資料來源組態精靈,根據 Northwind 資料庫的 Customers 和 Orders 資料表,建立及設定應用程式中的資料集。

  • 加入控制項,以顯示Customers 資料表的資料。

  • 加入控制項,以根據選取的 Customer 顯示 Orders。

  • 選取不同的客戶,並驗證所選客戶的訂單是否正確顯示,藉以測試應用程式。

必要條件

若要完成這個逐步解說,您必須要有:

建立專案

第一個步驟是建立 [Windows 應用程式]。

若要建立 Windows 應用程式專案

  1. 從 [檔案] 功能表中,建立新專案。

  2. 將專案命名為 RelatedDataWalkthrough。

  3. 選取 [Windows 應用程式],並按一下 [確定]。如需詳細資訊,請參閱建立 Windows 架構的應用程式

    RelatedDataWalkthrough 專案隨即建立並加入至 [方案總管]。

建立資料來源

這個步驟會根據 Northwind 範例資料庫的 Customers 和 Orders 資料表,建立資料集。

若要建立資料來源

  1. 在 [資料] 功能表上,請按 [顯示資料來源]。

  2. 在 [資料來源] 視窗中,選取 [加入新資料來源],啟動 [資料來源組態精靈]。

  3. 請選取 [選擇資料來源類型] 頁面上的 [資料庫],再按 [下一步]。

  4. 在 [選擇資料連接] 頁面上,執行下列其中一項動作:

    • 如果下拉式清單中有提供 Northwind 範例資料庫的資料連接,請選取這個資料連接。

      -或-

    • 選取 [新增連接],啟動 [新增/修改連接] 對話方塊。如需詳細資訊,請參閱新增/修改連接對話方塊 (一般)

  5. 如果資料庫需要密碼,請選取選項來加入敏感性資料,然後按一下 [下一步]。

  6. 按一下 [將連接字串儲存到應用程式組態檔] 頁面上的 [下一步]。

  7. 在 [選擇您的資料庫物件] 頁面上,展開 [資料表] 節點。

  8. 選取 [Customers] 和 [Orders] 資料表,再按一下 [完成]。

    [NorthwindDataSet] 會加入至專案,而且 [Customers] 資料表會出現在 [資料來源] 視窗中。

建立控制項,以顯示客戶資料表的資料

若要建立控制項以顯示客戶資料 (父資料錄)

  1. 在 [資料來源] 視窗中,選取 [Customers] 資料表,再按一下下拉箭號。

  2. 選擇功能表上的 [詳細資料]。

  3. 從 [資料來源] 視窗,將 [客戶] 主節點拖曳至 [Form1] 上方。

    具有描述性標籤的資料繫結控制項以及用於巡覽資料錄的工具區域 (BindingNavigator) 會出現在表單上。NorthwindDataSetCustomersTableAdapterBindingSourceBindingNavigator 則會出現在元件匣中。

建立控制項,以顯示訂單資料表的資料

顯示關聯的資料來源視窗

若要建立控制項以顯示每位客戶的訂單 (子資料錄)

  • 在 [資料來源] 視窗中,展開 [Customers] 節點,並選取 [Customers] 資料表的最後一個資料行 (它是可展開的 [Orders] 節點),然後將它拖曳至 [Form1] 的底端。

    DataGridView 隨即加入至表單中,而且新的 BindingSource (OrdersBindingSource) 和 TableAdapter (OrdersTableAdapter) 也會加入至元件匣。

    注意事項:

    開啟屬性視窗,選取 [OrdersBindingSource]。檢查 DataSourceDataMember 屬性,以查看繫結如何設定,以顯示相關資料錄。DataSource 會設定為 CustomersBindingSource (父資料表的 BindingSource),而非 Orders 資料表。DataMember 屬性已設為 FK_Orders_Customers,它是讓這些資料表互相產生關聯的 DataRelation 物件名稱。

測試應用程式

若要測試應用程式

  1. 按下 F5,執行應用程式。

  2. 使用 CustomersBindingNavigator 選取不同的客戶,以驗證 DataGridView 中已顯示正確訂單。

後續步驟

根據應用程式的需求而定,您在建立主從式 (Master-Detail) 表單後可能還會想執行幾個步驟。您可以對這個逐步解說進行加強的部分如下:

請參閱

工作

HOW TO:在 Windows 應用程式中顯示相關的資料

概念

資料的新功能

顯示資料概觀

資料來源概觀

TableAdapter 概觀

參考

資料來源視窗

BindingSource 元件概觀

BindingNavigator 控制項概觀 (Windows Form)

其他資源

資料逐步解說