計(jì)算機(jī)二級(jí)VisualBasic輔導(dǎo):創(chuàng)建一個(gè)連接DataList控件的DataGrid

字號(hào):

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