set datagrid.datasource=nothing
set datagrid.datasource=你的数据源
datagrid.refresh

解决方案 »

  1.   

    Private Sub Command1_Click()
    Data4.Recordset.MoveLast
    Data4.Recordset.AddNew
            Data4.Recordset("xm") = DBCom_xm.Text
            Data4.Recordset("lb") = DBCom_lb.Text
            Data4.Recordset("rq") = DTPicker1.Value
            Data4.Recordset("kssj") = Text2.Text
            Data4.Recordset("jssj") = Text3.Text
            Data4.Recordset("bz") = Text1.Text
            Data4.Recordset.Update
            
        Data4.Recordset.Close
        MsgBox "数据已成功添加"
       End SubPrivate Sub DataGrid1_AfterInsert()
    Dim mystr As String
    mystr = "select id,xm,bm,rq,kssj,jssj from kaoqinbiao order by id desc"
    DataGrid1.Refresh
    End SubPrivate Sub DataGrid1_Click()
    Dim mystr As String
    mystr = "select id,xm,bm,rq,kssj,jssj from kaoqinbiao order by id desc"End SubPrivate Sub Form_Load()
    Adodc1.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=d:\考勤表\考勤系统.mdb;Persist Security Info=False"
    Adodc1.CommandType = adCmdText
    Adodc1.RecordSource = "select * from kaoqinbiao"
    Adodc1.RefreshSet DataGrid1.DataSource = Adodc1
    End Sub以上是我的程序源代码,可是还是不行呀
      

  2.   

    to northwolves
    还是不行呀
      

  3.   

    如果,你这样设置datagrid:
    Set Datagrid1.datasource=rs
    DataGrid1.Refresh
    第二次选数据前,要关闭已选数据源:
    rs.close
    set rs=nothing
      

  4.   

    to s6w6k我是用控件adodc编写的,无法关闭数据源呀
      

  5.   

    你就是缺少延迟时间,你应该给程序一个时间,让它显示出来,在确定完数据源后,人为的给它加上一段延迟,然后在把它显示在datagrid上。我试过了,只有这样才好使
      

  6.   

    to freehorse_1981请问有代码吗
      

  7.   

    adodc1.refresh'ADO控件刷新
    set datagrid1.datasource=adodc1'将数据源赋给datagrid1控件
    datagrid1.refresh'datagrid1控件刷新
      

  8.   

    谢谢chenyu5188
    我把代码放到cmd_add  click里,可以显示增加的数据,不过是在增加完第二条数据后,可以显示第一条数据。