真石外墙漆效果图:有没有VB高手帮小妹一下呀?

来源:百度文库 编辑:神马品牌网 时间:2024/05/02 19:20:11
Private Sub Form_Load()
Dim connectionstring As String
Dim conn As New ADODB.Connection
Dim sql As String
Dim rs As New ADODB.Recordset
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data.mdb"
conn.Open connectionstring
sql = "select * from 收电报"
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
Debug.Print rs.State
Set DataGrid1.DataSource = rs
End Sub

用其它控件都可以显出rs中是数词有数据集的,但datagrid1就显不出数据!有哪位高手帅哥给个准确的答案?
小妹谢了先!

你少加一句:
Rs.CursorLocation = adUseClient

修改后的代码为:
Private Sub Form_Load()
Dim connectionstring As String
Dim conn As New ADODB.Connection
Dim sql As String
Dim rs As New ADODB.Recordset
connectionstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & App.Path & "\data.mdb"
conn.Open connectionstring
sql = "select * from 收电报"
rs.CursorLocation = adUseClient
rs.Open sql, conn, adOpenKeyset, adLockPessimistic
Debug.Print rs.State
Set DataGrid1.DataSource = rs
End Sub

实话说,我也不太清楚为什么VB一定要加这一句,可能是因为:

〔说明〕资料来源:MSDN

使用 Set 语句设置 DataSource,如下所示:

Set Text1.DataSource = ADODC1

注意 两个旧的控件,Data 控件和 RemoteData 控件,可以作为数据源使用,然而,您不能在运行时将另一个控件或对象的DataSource 属性设置为这两个控件之一。例如,下列代码将会失败:

Set Text1.DataSource = Data1 ' 将会失败!您不能在运行时将DataSource
' 设置为一个内部 Data 控件。

要将 Data 控件或 RemoteData 控件之一作为数据源使用,您只能在设计时设置绑定控件的 DataSource 属性。

DataGrid1不是为ADO设计的,所以有这个问题。