请问,我将datacombo的datasorce 设为adodc嘛datafield为相应的字段嘛!可是为什么运行时datacombo他就只显示当前记录的字段呢!为什么不自动地将所以的记录都填充进去呢?请高手指教·小弟跪谢了

解决方案 »

  1.   

    要用for循环来填充的吧,将记录从头移到尾。
      

  2.   

    我试了把RowSource该为了adodc还是不行呢?你可不可以再说详细一点!谢谢!
      

  3.   

    Option Explicit
    Public rs As New ADODB.RecordsetPublic conn As New ADODB.ConnectionPrivate Sub Form_Load()
     Dim strconn As String
     strconn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source" & App.Path & " & \Test.mdb;Persist Security Info=False"
     conn.CursorLocation = adUseClient
     
     conn.Open strconn
     
     If rs.State = 1 Then rs.Close
     rs.Open "select * from People", conn, 3, 3
     
    Set Me.DataCombo1.RowSource = rsWith Me.DataCombo1
     .ListField = "Name"End With
    End Sub這樣就可以了呀^^
      

  4.   

    创建一个简单的 DataCombo 应用程序
    下面的示例使用 DataCombo 控件为 Northwind.mdb 示例数据库的 Titles 表创建一个数据输入界面。这个输入界面使用户可以输入新的产品,并通过提供一个包括所有供应商名称的查找表将这些新产品指定到已有的供应商。当用户在输入窗体中要输入供应商字段的值时,他们可以从一个列表框中选择一个供应商。当他们选定一个供应商后,该供应商的 SupplierID 字段值就复制到 Products 表的 SupplierID 字段。要使用 DataCombo 控件来创建一个查找表 给 Northwind 数据库创建一个OLEDB 数据源。 
    如果还没有创建数据源,请按照“创建 Northwind 的OLEDB 数据源”中的步骤进行。在Visual Basic 中创建一个新的标准的 EXE 工程。 
    如果“DataGrid”、“DataCombo”、或“ADO Data”控件不在“工具箱”中,则右键单击“工具箱”,然后使用“部件”对话框来添加控件。添加一个 DataCombo 控件、两个 ADO Data 控件、以及一个 DataGrid 控件到窗体中。
    在“属性”窗口中,如下表所示设置第一个数据控件 (Adodc1) 的属性。 属性 设置值 
    Name AdoDataSource 
    ConnectionString Northwind.udl 
    RecordSource Select * From Products; 
    Caption Products 
    在“属性”窗口中,如下表所示设置第二个数据控件 (Adodc2) 的属性。 属性 设置值 
    Name AdoRowSource 
    ConnectionString Northwind.udl 
    RecordSource Select CompanyName, SupplierID From Suppliers; 
    Caption Suppliers 
    Visible False 
    在“属性”窗口中,如下表所示设置 DataGrid 控件的属性。 属性 设置值 
    Name GrdProducts 
    DataSource AdoDataSource 
    Caption Products 
    在“属性”窗口中,如下表所示设置 DataCombo 控件的属性。 属性 设置值 
    Name DcbSuppliers 
    DataSource AdoDataSource 
    DataField SupplierID 
    RowSource AdoRowSource 
    ListField CompanyName 
    BoundColumn SupplierID 
    最后,将下述代码添加到该窗体的代码模块中: 
    Private Sub Form_Load()
    ' 在 DataGrid 控件中隐藏 SupplierID 字段,使用户
    ' 不会混淆到底该更改哪一个值。
    grdProducts.Columns("SupplierID").Visible = False
    End Sub运行该工程。 
    可以通过单击可视的 ADO Data 控件上的箭头来浏览记录集。如果这样做,DataCombo 控件将更新和显示每一个产品的供应商的名称。如果要编辑 SupplierID 字段,则单击 DataCombo 控件的箭头来显示一个下拉列表,然后再单击一个不同的供应商,来改变写入到 SupplierID 字段的值。
      

  5.   

    非常感谢!!!我刚才是没有设置listfield属性!我知道了!谢谢了
      

  6.   

    我想问一下,当我选中了DataCombo中的一项,但是为什么记录集不跳到对应的那一项呢,它还是没有变化的啊,应该怎么设置呢?我选了DataCombo的click 事件,想通过参数来把选中的那个字段值传来也不行啊,请问怎么办呢?谢谢指点!
      

  7.   

    因为他绑定的是当前记录的字段,可以先把字段里的内容动态加载到COMBO框中这样再绑定就可以达到你所要的效果了
      

  8.   

    我想问一下,当我选中了DataCombo中的一项,但是为什么记录集不跳到对应的那一项呢,它还是没有变化的啊,应该怎么设置呢?我选了DataCombo的click 事件,想通过参数来把选中的那个字段值传来也不行啊,请问怎么办呢?谢谢指点!
    回复:
    你需要用adodc,用它的游标