为什么不能把DataGrid控件绑定到Recordset对象?
我把DataGrid控件的DataSource属性设置成Adodc可以自动显示表中的数据,而如果设置成一个我在程序中申明的Recordset对象却不行,为什么呢?这个Record对象已经正确初始化了,而且如果用Text控件绑定之后显示其中某一个字段的数据也没有问题。
问题点数:48、回复次数:7Top
1 楼xsp(半个程序员)回复于 2002-01-28 09:38:41 得分 2
绑定之后刷新一下试试Top
2 楼lihonggen0(李洪根,MS MVP,标准答案来了)回复于 2002-01-28 09:50:54 得分 15
'**********先将其set datagrid1.DataSource=nothing后,再绑定
Public Rs_Jc_Xsfp_Sp As New ADODB.Recordset
With Rs_Jc_Xsfp_Sp
If .State = adStateOpen Then
.Close
End If
.ActiveConnection = adoCN
.CursorLocation = adUseClient
.CursorType = adOpenDynamic
.LockType = adLockBatchOptimistic
.Source = "SELECT * FROM Jc_Xsfp_Sp WHERE PINVOICE='" & Trim(W_Jc_Xsfp.Text1(0).Text) & "'ORDER BY ID"
.Open
.Sort = "ID"
End With
Set W_Jc_Xsfp.DataGrid1.DataSource = Rs_Jc_Xsfp_Sp
Top
3 楼hzyzx(无情剑)回复于 2002-01-28 09:57:26 得分 2
同意上面Top
4 楼dbcontrols(泰山__抛砖引玉)回复于 2002-01-28 10:24:14 得分 4
http://www.wzjcw.net/vbgood/taishan/index.html的几个示例可以参考Top
5 楼Past(Past)回复于 2002-01-28 11:18:13 得分 0
没有反应啊,我的代码如下:
Set rsMy = New Recordset
rsMy.Open "Select * From Employees", cnMy, adOpenStatic 'cnMy是已经打开的连接
Set DataGrid1.DataSource = Nothing '加了这句也不行
Set DataGrid1.DataSource = rsMyTop
6 楼twosand(dong)回复于 2002-01-28 11:53:20 得分 25
实际上,你只需要
myRs.CursorLocation = adUseClientTop
7 楼Past(Past)回复于 2002-01-28 12:05:01 得分 0
对了!就是少了myRs.CursorLocation = adUseClient。
多谢各位!Top




