亚洲免费乱码视频,日韩 欧美 国产 动漫 一区,97在线观看免费视频播国产,中文字幕亚洲图片

      1. <legend id="ppnor"></legend>

      2. 
        
        <sup id="ppnor"><input id="ppnor"></input></sup>
        <s id="ppnor"></s>

        DataGrid控件的使用四

        字號(hào):

        使用 Bookmarks 和 SelBookmarks 跟蹤記錄
             Bookmarks 和 SelBookmarks 提供了標(biāo)記記錄的一種手段。當(dāng)編寫應(yīng)用程序中的特定功能(諸如允許最終用戶手工地選擇多個(gè)不相鄰的記錄,進(jìn)行所選記錄的大批更新)時(shí),這就很有必要。在這些情形中,需要標(biāo)記哪些記錄已被選擇,因此可以使用 SelBookmarks 集合及其屬性。
             有兩個(gè)函數(shù),分別是 CellText 和 CellValue 方法,需要標(biāo)記才能正確執(zhí)行。
             標(biāo)記用戶的選擇
             SelBookmarks 集合包含所有選定的記錄的書簽。當(dāng)最終用戶手工選擇記錄時(shí)(即在單擊時(shí)按住 CTRL 鍵),每一個(gè)選定的記錄的書簽都會(huì)加入到該集合中。使用標(biāo)準(zhǔn)的循環(huán),用戶可以知道已經(jīng)選定了什么,也可以保存書簽(因?yàn)榭赡苄枰謴?fù)某個(gè)值),以及執(zhí)行操作:
             Dim i as Integer ’ 計(jì)數(shù)器
             Dim intCount As Integer
             intCount = DataGrid1.SelBookmarks.Count - 1
             ReDim arrSelBK(intCount) ’ 聲明用于保存書簽的數(shù)組。
             For i = 0 To intCount
             ArrSelBK(i) = DataGrid1.SelBookmarks(i)
             ’ 在此處執(zhí)行操作。如果該操作必須被
             ’ 取消,則退出該循環(huán),然后使用該數(shù)
             ’ 組來取消這些更改。
             Next i
             通過在程序中添加到 SelBookmarks 集合來選擇記錄
             通過將記錄添加到這個(gè)集合,也可以在程序中選定記錄。例如,可能有一個(gè)顯示指定的客戶所有訂貨的網(wǎng)格。如果要高亮顯示該客戶花費(fèi)超過 $100的所有記錄,則對(duì)記錄進(jìn)行過濾,并將結(jié)果書簽添加到 SelBookmarks 集合。
             Dim rs As Recordset
             Set rs = Adodc1.Recordset
             While Not rs.EOF
             If rs!SupplierID = 12 Then
               DataGrid1.SelBookmarks.Add rs.Bookmark
             End If
             rs.MoveNext
             Wend
             顯示計(jì)算結(jié)果字段
             假設(shè)在表中有一個(gè)名為 "Price" 的字段,并且想使用本地稅率來計(jì)算表中每一項(xiàng)的稅費(fèi)。這就是一個(gè)計(jì)算結(jié)果字段,可以通過修改 DataSource 的查詢來計(jì)算這個(gè)值,并把這個(gè)值返回給 DataGrid 控件。
             要在 DataGrid 控件中創(chuàng)建一個(gè)計(jì)算結(jié)果字段
             1. 確認(rèn)在機(jī)器上已為 Northwind 數(shù)據(jù)庫建立了一個(gè)OLE DB 數(shù)據(jù)源;如果還沒有創(chuàng)建這樣的一個(gè)數(shù)據(jù)源,請(qǐng)按照“創(chuàng)建 Northwind 的OLE DBData 連接”的步驟操作。
             2. 在窗體上放置一個(gè) ADO Data 控件和一個(gè) DataGrid 控件。
             3. 將 ADO Data 控件的ConnectionString 屬性設(shè)置為 Northwind 的數(shù)據(jù)源。
             4. 設(shè)置 ADO Data 控件的 RecordSource 屬性。在“屬性”窗口中,單擊“記錄源”并輸入 Select ProductName, UnitPrice,(UnitPrice * .082) As Tax From Products。
             5. 將 DataGrid 控件的 DataSource 屬性設(shè)置為這個(gè) ADO Data 控件。
             6. 運(yùn)行該工程。
             與類模塊一起使用 DataGrid 控件
             如果想要訪問以自定義格式或以 ODBC 驅(qū)動(dòng)程序不直接支持的格式存放的數(shù)據(jù),可以創(chuàng)建一個(gè)類來封裝該數(shù)據(jù)。然后可以編寫該類的自定義函數(shù)來檢索這些數(shù)據(jù)。這樣該類就變成了一種數(shù)據(jù)源,可以被任何數(shù)據(jù)使用者(如DataGrid 控件)使用。
             在這個(gè)類模塊的Initialize 事件中,首先通過聲明一個(gè)作為 New ADODB.Recordset的變量,來創(chuàng)建一個(gè) ADODB recordset 對(duì)象。在創(chuàng)建了這個(gè) recordset 對(duì)象后,再添加字段,每個(gè)數(shù)據(jù)源中的每個(gè)字段都要加入。然后使用合適的數(shù)據(jù)填充這個(gè)記錄集。
             注意 也可以使用 OLEDB 示例提供者來創(chuàng)建一個(gè)數(shù)據(jù)源。關(guān)于 OLEDB示例提供者的詳細(xì)信息,請(qǐng)參閱“創(chuàng)建帶有數(shù)據(jù)提供方的部件”。
             類模塊有一個(gè) GetDataMember 事件,只要當(dāng)數(shù)據(jù)使用者(諸如 DataGrid 控件)需要數(shù)據(jù)時(shí)就產(chǎn)生該事件。在這個(gè)事件中,Data 參數(shù)被設(shè)置為在Initialize 事件中所創(chuàng)建的 recordset 對(duì)象。
             如果要使用這個(gè)類模塊,應(yīng)創(chuàng)建一個(gè)具有一個(gè) DataGrid 控件的窗體。在該窗體的 Load 事件的代碼中,將該控件的 DataSource 屬性設(shè)置為這個(gè)類。
             注意 數(shù)據(jù)類模塊在設(shè)計(jì)時(shí)是不可用的。例如,如果使用 DataGrid 控件,則當(dāng)用戶在“屬性”窗口中單擊“數(shù)據(jù)源”時(shí),所有可用的數(shù)據(jù)源都會(huì)出現(xiàn)在一個(gè)下拉列表中。但其中不會(huì)有這個(gè)數(shù)據(jù)類模塊,它只能在代碼中設(shè)置。