計算機二級VisualBasic輔導:創(chuàng)建一個連接DataList控件的DataGrid

字號:

DataGrid 的通常用法是顯示數(shù)據(jù)庫的一個表所提供的“詳細內(nèi)容”。例如,Northwind (Nwind.mdb) 數(shù)據(jù)庫包括兩個表,一個名為 "Suppliers",另一個名為 "Products"。在本例中,我們使用 DataList 控件來顯示 "Suppliers" 表中的供應商的公司名稱。當用戶單擊任意一個公司名稱時,這個 DataList 控件將提供該公司的 SupplierID。使用這個標識符,就可以構(gòu)造一個查詢,在 "Products" 表中檢索具有相匹配的 SupplierID 的所有記錄。換句話說,當用戶單擊一個公司時(在 DataList 控件中),該公司生產(chǎn)的所有產(chǎn)品將出現(xiàn)在 DataGrid 控件中。
    要使用一個指定供應商的產(chǎn)品填充一個 DataGrid 控件
    確認在機器上已為 Northwind 數(shù)據(jù)庫建立了一個OLE DB 數(shù)據(jù)源;如果還沒有創(chuàng)建這樣的一個數(shù)據(jù)源,請按照“創(chuàng)建 Northwind 的OLE DB Data Link”的步驟操作。
    在Visual Basic 中創(chuàng)建一個新的標準的 EXE 工程。
    如果 DataGrid、DataList 和 ADO Data 控件不在“工具箱”中,則右鍵單擊“工具箱”,然后單擊“部件”。在“部件”對話框中雙擊“Microsoft DataGrid Control”、“Microsoft DataList Controls”以及“Microsoft ADO Control”。
    在一個空窗體中各放置一個 DataGrid 和 DataList 控件的實例。
    將 DataList 控件放置在該窗體的左上角,然后將 DataGrid 控件放在它的下面的某處。
    在窗體放置兩個 ADO Data 控件實例。
    選擇第一個 ADO Data 控件,并按 F4 鍵來顯示其“屬性頁”。將該控件的 Name 屬性設置為 adoSuppliers。選擇第二個 ADO Data 控件并將其 Name 屬性設置為 adoProducts。將第一個控件直接放在 DataList 控件的下面,把第二個控件直接放在 DataGrid 控件的下面。
    將這兩個 ADO Data 控件的 ConnectionString 屬性設置為 Northwind 的OLE DB 數(shù)據(jù)源。
    選擇名為 adoSuppliers 的控件,然后將其ConnectionString 屬性設置為 Northwind 的OLE DB data source (Northwind.udl)。選擇名為 adoProducts 的控件,并重復該操作。
    設置這兩個 ADO Data 控件的 RecordSource 屬性。
    選擇 adoSuppliers 并在其“屬性頁”上單擊“記錄源”。輸入 Select * From Suppliers。這個查詢將指示該 ADO Data 控件返回 Suppliers 表中的所有記錄。選擇 adoProducts,單擊“記錄源”,并輸入 Select * From Products。這個查詢將返回在 Products 表中的所有記錄。
    將 DataList 控件的 RowSource 屬性設置為 adoSuppliers。
    RowSource 屬性決定由哪一個數(shù)據(jù)源為 ListField 屬性供應數(shù)據(jù)。
    將 DataList 控件的的 ListField 屬性設置為 CompanyName。
    ListField 屬性被設置為名為 Suppliers 的表中的字段名稱。在運行時,DataList 控件顯示在這個屬性中所指定的字段的值。在本例中,該屬性將顯示在 Suppliers 表中找到的一個公司名稱。