DataGrid控件的使用二

上一篇 / 下一篇  2007-03-06 11:34:18 / 个人分类:vb

51Testing软件测试网 P%k1y1w9`+A1?

创建 Northwind 的OLE DB 数据链接
1d1v r8G6H0
    访问数据的一个重要步骤是为想要访问的每个数据库都创建一个 OLE DB数据源。下面的步骤为 Visual Basic 所提供的Nwind.mdb (Northwind) 数据库创建这样一个对象。这个数据源被用于 Visual Basic 文档所提供的一些示例过程。在一个计算机上只需要创建一次OLE DB数据源。
9clTrAz MD051Testing软件测试网u8bVg#Mo a([
    要创建 Northwind 的OLE DB 数据源51Testing软件测试网+x0j5Kn]&xX
    1. 打开 Windows Explorer或 Windows NT Explorer。51Testing软件测试网ym`i)E;[ C P2e/]
    2. 打开您想要创建 OLE DB 数据源的目录。在该示例中,打开 ProgramFiles、Microsoft Visual Studio和VB98。51Testing软件测试网9Z/gX gq,om~
    3. 右键单击 Explorer 的右边窗格,然后单击上下文菜单上的“新建”。从文件类型列表中单击“Microsoft 数据链接”。
#j"kly:a Zj3h0    4. 重命名新文件 Northwind.MDL。51Testing软件测试网,B;k#x|;Z!\`
    5. 右键单击文件并单击上下文菜单上的“属性”,以显示“Northwind.MDLProperties”对话框。
1zUi m-E]0    6. 单击“连接”选项卡。51Testing软件测试网iH|ut}J
    7. 单击“提供方”框并选择“Microsoft Jet 3.51 OLE DB Provider”。
b!Ykn3vm#N0    8. 在Data Source 框中输入nwind.mdb文件的路径。
;]/Z2slIk ~zF RF0    9. 单击“测试连接”,检测连接。
UhO/M-mB5u0    10. 如果连接通过,单击“确定”。51Testing软件测试网@?(Q-Q]6Pf2G
    注意 也可以通过在“控制面板”中单击“数据链接”图标创建一个 OLE DB数据源。在“管理数据链接文件”对话框中,单击“新建”创建一个新的数据源。
l G.d.TimW051Testing软件测试网M%u.?Dy\`%e
    使用 DataGrid 和 ADO Data控件创建一个简单的数据库应用程序
*Q[iHK%i9u7i2T.WI1s0    只使用一个 DataGrid 和一个 ADO Data 控件,可以创建一个允许最终用户阅读和写入记录集的数据库应用程序。
+ODC3M\"b b051Testing软件测试网J#ja2qkBUA w6Vol.Da
    要使用 ADO 数据控件来创建一个简单的数据库应用程序
R*Rkh!?g q m0    1. 为 Northwind 数据库创建一个OLE DB 数据源。如果还没有创建数据源,请按照“创建 Northwind 的OLE DB Data Link”中的步骤操作。
C%Db!FR&V:@0    2. 在Visual Basic 中创建一个新的标准的 EXE 工程。如果 DataGrid 控件不在“工具箱”中,则用右键单击“工具箱”,然后使用“部件”对话框来添加控件。同时也载入 ADO 控件。51Testing软件测试网2\z/xZ}.Aqe}
    3. 在空窗体上各放置控件的一个实例。
OO5Y+s#w0    4. 将 ADO 控件的ConnectionString 属性设置为 Northwind 的数据源。单击并选定该 ADO Data 控件,并按 F4 键出现“属性”窗口。单击“ConnectionString”,然后单击 OLE DB File。单击 Northwind 的数据源。
%K)l$QiY F4SGbI0    5. 设置 ADO 控件的 RecordSource 属性。在“属性”窗口中,单击“记录源”并输入一条 SQL 语句来填充 DataGrid51Testing软件测试网g6j G`W.F#{V
控件。在本例中,输入“Select * From Products”。51Testing软件测试网&R;Dl,T&y$[
    6. 将 DataGrid 控件的 DataSource 属性设置为这个 ADO Data 控件。单击并选定该 DataGrid 控件。在其“属性”窗口中,单击“数据源”将出现一个包含所有数据控件的下拉列表——在本例中只有 ADO Data 控件。单击这个控件。
b%khT.O8DQvB.s0    7. 按 F5 键运行这个工程。
[!fbOk*h/L`1wy*U#@0
v {,_)np0    创建一个连接 DataList 控件的 DataGridData51Testing软件测试网8J V4{`{+Kc
    Grid 的通常用法是显示数据库的一个表所提供的“详细内容”。例如,Northwind (Nwind.mdb) 数据库包括两个表,一个名为 "Suppliers",另一个名为 "Products"。在本例中,我们使用 DataList 控件来显示 "Suppliers" 表中的供应商的公司名称。当用户单击任意一个公司名称时,这个 DataList 控件将提供该公司的 SupplierID。使用这个标识符,就可以构造一个查询,在 "Products" 表中检索具有相匹配的 SupplierID 的所有记录。换句话说,当用户单击一个公司时(在 DataList 控件中),该公司生产的所有产品将出现在 DataGrid 控件中。51Testing软件测试网KM9VEtTs
要使用一个指定供应商的产品填充一个 DataGrid 控件
g8U,aczl0    1. 确认在机器上已为 Northwind 数据库建立了一个OLE DB 数据源;如果还没有创建这样的一个数据源,请按照“创建 Northwind 的OLE DBData连接”的步骤操作。
\*M5E)Ck0^_0    2. 在Visual Basic 中创建一个新的标准的 EXE 工程。51Testing软件测试网fQ"F;JB0~
    如果 DataGrid、DataList 和 ADO Data 控件不在“工具箱”中,则右键单击“工具箱”,然后单击“部件”。在“部件”对话框中双击“MicrosoftDataGrid Control”、“Microsoft DataList Controls”以及“Microsoft ADOControl”。
+Ae"}E%u#m'w2n&s\0    3. 在一个空窗体中各放置一个 DataGrid 和 DataList 控件的实例。将 DataList 控件放置在该窗体的左上角,然后将 DataGrid 控件放在它的下面的某处。51Testing软件测试网^@;y0v5LG_
    4. 在窗体放置两个 ADO Data 控件实例。选择第一个 ADO Data 控件,并按 F4 键来显示其“属性页”。将该控件的 Name 属性设置为 adoSuppliers。选择第二个 ADO Data 控件并将其 Name 属性设置为 adoProducts。将第一个控件直接放在 DataList 控件的下面,把第二个控件直接放在 DataGrid 控件的下面。
@X%`:N/L*x'V!I8_0    5. 将这两个 ADO Data 控件的 ConnectionString 属性设置为 Northwind的OLE DB 数据源。选择名为 adoSuppliers 的控件,然后将其ConnectionString 属性设置为Northwind 的OLE DB data source (Northwind.mdl)。选择名为 adoProducts的控件,并重复该操作。
.imT,Mz&{/M0    6. 设置这两个 ADO Data 控件的 RecordSource 属性。选择 adoSuppliers 并在其“属性页”上单击“RecordSoure”。输入 Select* From Suppliers。这个查询将指示该 ADO Data 控件返回 Suppliers 表中的所有记录。选择 adoProducts,单击“RecordSoure”,并输入 Select *From Products。这个查询将返回在 Products 表中的所有记录。51Testing软件测试网4Fm`yP:[
    7. 将 DataList 控件的 RowSource 属性设置为 adoSuppliers。51Testing软件测试网t;c/X&Ejy(S%L
     RowSource 属性决定由哪一个数据源为 ListField 属性供应数据。51Testing软件测试网.U^'C%Z4D6B:T6biZ
    8. 将 DataList 控件的 ListField 属性设置为 CompanyName。
5f;WFJ9_b~]0     ListField 属性被设置成名为 Suppliers 的表中的字段名称。在运行时,DataList 控件显示在这个属性中所指定的字段的值。在本例中,该属性将显示在 Suppliers 表中找到的一个公司名称。51Testing软件测试网Hne$f9G`6bO
    9. 将 DataList 控件的 BoundColumn 属性设置为 SupplierID。
+[w)ec'Q]+sr0     BoundColumn 属性被设为 Suppliers 表中的第二个字段。在本例中,这个属性就被设为 SupplierID 字段。当单击 DataList 控件时,BoundText属性返回与在 DataList 控件中所显示的公司相关联的 SupplierID 字段的值。这个值将用于对 Products 表的查询,该查询为 DataGrid 控件提供数据。
'l@Cw#n'Aa3V)@0    10. 将 DataGrid 控件的 DataSource 属性设置为 adoProducts。51Testing软件测试网}?T5W0_aO
     DataSource 属性为该控件指定数据源。在本例中,该属性被设置为名为adoProducts 的 ADO Data 控件,这将返回 Products 表中的所有记录。
L@@&Na0r,Z0v l0    11. 在窗体的代码模块中,添加下述内容:51Testing软件测试网9}v}d(_ y0Be
      Private Sub Datalist1_Click()
h#lO6AuM;|0      '' 声明一个用来包含新查询的字符串变量。这个新的51Testing软件测试网 A)_1l?jL Yp|
      '' 查询使用 DataList 控件的BoundText属性
Ld:DN Tf0@@.eb(k0      '' 来提供一个 SupplierID 值。新查询查找所有51Testing软件测试网g3im#U*b
      '' 具有相同的 SupplierID 的产品。这个查询被51Testing软件测试网r-Vs3Rd.YG
      '' 指定给名为 adoProducts 的 ADO Data 控件
B2~S"Sd Q0      '' 的 RecordSource 属性。在刷新控件后,DataGrid
F Ez}AI0      '' 将使用包含由同一个公司供应的所有产品的新
%e.sj\pml0      '' 记录集来更新。
vz$p'XXJ051Testing软件测试网"p x+t2}L j8ze7G
      Dim strQuery As String
$J7Y;|9Hu*Po5E:m0      strQuery = "Select * FROM Products WHERE SupplierID = " & _
;KRlJM(O#H$X0      Datalist1.BoundText51Testing软件测试网2Td/z:~Z sLo

&WHor8lo |0      With adoProducts51Testing软件测试网;Mm&c1K i+i'N
        .RecordSource = strQuery51Testing软件测试网*RO){\ f-A'm
        .Refresh51Testing软件测试网T1`pmPm(YH
      End With
};}E2]6g!SdU to0
]w^7D{#PvS9c HE0      With DataGrid1
7gjq u)Wf0        .ClearFields51Testing软件测试网6iSf%pN*]1S
        .ReBind
LTl!L%B0      End With
1v g.wM I,t"h,o?#v0      End Sub51Testing软件测试网4t!d/Kcg4G5h
    12. 运行该工程。
2q2lc4so0    单击 DataList 控件中的任意公司名称,将自动用该公司所供应的产品更新 DataGrid 控件。51Testing软件测试网 i6kJ"P\L l,i


TAG: vb

 

评分:0

我来说两句

Open Toolbar