rs  是我已经选出的记录集
我用datagrid.datasource=rs
怎么不行呀
帮我一下

解决方案 »

  1.   

    set datagrid.datasource=rs  你少了个set
      

  2.   

    Option ExplicitPrivate Rs As New ADODB.Recordset
    Private Conn As New ADODB.ConnectionPrivate Sub Form_Load()
     Dim strConn As String
     
     ' 连接数据库的字符串
     ' 连接带密码的数据库,直接在连接符后面加上Jet OLEDB:DataBase Password='您的密码'
     ' 连接Access97数据库需要使用Jet.OLEDB.3.5,Access2K和以上数据库使用Jet.OLEDB.4.0
     strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\test.mdb;Persist Security Info=False"
     
     ' 使用客户端数据游标
     Conn.CursorLocation = adUseClient
     ' 打开Access的连接
     Conn.Open strConn
     
     ' 如果RecordSet的状态不是关闭状态,则关闭Recordset
     If Rs.State <> adStateClosed Then Rs.Close
     
     ' Recordser打开表People
     Rs.Open "Select * from People", Conn, adOpenKeyset, adLockOptimistic
     
     ' 报告出 一共多少笔数据,测试是否存在数据
     ' MsgBox Rs.RecordCount
     
     ' 绑定进DataGrid
     Set DataGrid1.DataSource = Rs
     
    End Sub
      

  3.   

    Set DataGrid1.DataSource = Rs
      

  4.   

    呵呵,方法应该是对的,但在我这里就是行不通,你们说怪不怪,提示对象变量或WITH块对象变量位设置,
      

  5.   

    我是这样搞的
    rs 是自己取出的记录集
    在类模块里,我定义 Private WithEvents mDbTabCtrl As DataGrid
    Public Property Let intTab(ByVal vNewValue As Integer)
          mTab = vNewValue
    ****     Set mDbTabCtrl.DataSource = rs
    End Property
    再****处提示mDbTabCtrl对象变量或WITH块对象变量位设置,
      

  6.   

    偶...倒你在写对象啊......你把datagrid当对象了啊.........
    VB6是基于对象,可别把它当NET啊
      

  7.   

    Dim strSQL As String
    strSQL = "select * from Client where CPhone like '" & txtPhone & "'"rsClient.Open strSQL, cnSet dg.DataSource = rsClientVB提示行集合不能作为标签,是什么意思啊?
      

  8.   

    ' 报告出 一共多少笔数据,测试是否存在数据
     ' MsgBox Rs.RecordCount
    我使用这个方法时,发现RecordCount 始终为-1 但RS实际上是有数据的,那是怎么回事呢?
      

  9.   

    to山歌:你没好好看莫伊的帖子
    ' 使用客户端数据游标
     Conn.CursorLocation = adUseClient
    你加了这个RecordCount 就不会始终为-1了