请教各位大侠,如何通过程序代码实现DataGrid控件内容的动态显示,不用ADODC控件建立连接,下面的代码是否正确?能否给出代码?小弟在此万分感谢!

解决方案 »

  1.   

    '引用microsoft activex data object 2.x library
    Option Explicit
    Private conn As ADODB.Connection
    Private WithEvents rs As ADODB.RecordsetPrivate Sub Form_Load()
    Dim apppath As String
    Dim dbfilename As String
    Dim ConnectString As String
    Dim i As Integer
    Set conn = New ADODB.Connection
    If Right(App.Path, 1) = "\" Then
       apppath = App.Path
    Else
       apppath = App.Path & "\"
    End If
    dbfilename = apppath & "order.mdb"
    ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;"
    conn.Open ConnectString
    conn.CursorLocation = adUseClientSet rs = New ADODB.Recordset
    rs.Open "select * from orders", conn, adOpenDynamic, adLockPessimistic
    If rs.EOF Then
    Exit Sub
    End IfSet DataGrid1.DataSource = rs
    End Sub
      

  2.   

    代码如下:Set rsdatagridworking = New ADODB.Recordset
      rsdatagridworking.Open "Select * from workingtable where 图号='" & lstdrawing.Text & "'", db, adOpenStatic, adLockOptimistic
      DataGridworking.DataSource = rsdatagridworking
      

  3.   

    Set rsdatagridworking = New ADODB.Recordset
      rsdatagridworking.Open "Select * from workingtable where 图号='" & lstdrawing.Text & "'", db, adOpenStatic, adLockOptimistic
      DataGridworking.DataSource = rsdatagridworking
      

  4.   

    DataGridworking.DataSource = rsdatagridworking
    提示编译错误:未找到方法或数据成员!怎么设定DATAGRID控件的行数和列数?
    怎么让数据记录与其绑定显示?小弟初学,望大侠赐教。非常感谢
      

  5.   

    如果连接已经建立,应该可以。但是可能需要:db.CursorLocation = adUseClient
      

  6.   

    DataGridworking.DataSource = rsdatagridworking
    提示编译错误:未找到方法或数据成员!
    少了set 语句
    set  DataGridworking.DataSource = rsdatagridworking
    未提示错误关键是怎样用代码让数据显示出来?
    请赐教
      

  7.   

    Set DataGridworking.DataSource = rsdatagridworking
      

  8.   

    小弟不懂
    运行程序,没有错误但是DataGrid控件内容为空呀可否详细解说一下?
    非常感谢
      

  9.   

    怎么设定DATAGRID控件的行数和列数?  总行数是记录集决定的。可见行数受控件高度和字体设置的影响。
      如果希望限制总行数:
        select top 100 * from ......  列数可以由记录集控制,也可以在设计时用右键点DATAGRID控件,进入编辑状态来添加和删除。如果是人工控制,应当在属性对话框中设置各列的名称和对应字段。
      由记录集自动控制时:
        select field1 as colname1, field5 as colname2, field2 as colname3 ......怎么让数据记录与其绑定显示?  你上面的代码就是绑定呀!
      

  10.   

    小弟不懂
    运行程序,没有错误但是DataGrid控件内容为空呀是否缺这句:
    db.CursorLocation = adUseClient
      

  11.   

    由记录集自动控制时:
        select field1 as colname1, field5 as colname2, field2 as colname3 ......请教这句怎么解释?
    怎么实现?
    可否给个例程?
      

  12.   

    公司昨天停电,正在调试程序是为保存,结果今天来了之后,昨天调好的程序中,一个窗体文件变成了一个模块文件,并且加载错误,无法按窗体形式打开,只能按 模块形式打开
    求教这是怎么会事?上面的问题用ADODC控件可以解决,那么不用ADODC控件可否解决呢?
    望各位大侠赐教。
      

  13.   

    '引用microsoft activex data object 2.x library
    Option Explicit
    Private conn As ADODB.Connection
    Private WithEvents rs As ADODB.RecordsetPrivate Sub Form_Load()
    Dim apppath As String
    Dim dbfilename As String
    Dim ConnectString As String
    Dim i As Integer
    Set conn = New ADODB.Connection
    If Right(App.Path, 1) = "\" Then
       apppath = App.Path
    Else
       apppath = App.Path & "\"
    End If
    dbfilename = apppath & "order.mdb"
    ConnectString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & dbfilename & ";Persist Security Info=False;"
    conn.Open ConnectString
    conn.CursorLocation = adUseClientSet rs = New ADODB.Recordset
    rs.Open "select * from orders", conn, adOpenDynamic, adLockPessimistic
    If rs.EOF Then
    Exit Sub
    End IfSet DataGrid1.DataSource = rs
    End Sub
    上为一楼主方法调试时请拖入一个ADODC控件在FROM上,运行后再调试的话你可以删除或留着就OK了!
      

  14.   

    非常感谢
    确实可以了不过我一直没有搞明白的一个问题是
    怎样通过程序代码,而不是通过ADODC控件,来确定标头的内容?
    非常感谢
    敬请赐教