datagrid绑定失败。。。。recordset对象里已有数据集,
/*说明:查询并显示在列表里
查询成功了,在监视器看到recordset里有数值,
但绑定datagrid的语句过后,发现dataSource里“无变量”
控件也没显示任何东西。。。
搞个绑定都这么多麻烦,晕啊
*/
Set AdoStuRs = New ADODB.Recordset
AdoStuRs.CursorLocation = adUseClient
'QueryExt是我自己定义的执行sql语句的函数
Set AdoStuRs = QueryExt("SELECT [StuNum],[Sn],[Contact],[Campus] FROM [student]")
AdoStuRs.MoveFirst
'绑定到datagrid控件
Set DataGridStuList.DataSource = AdoStuRs
DataGridStuList.ReBind
DataGridStuList.Refresh
//**********
之前都有几个人问过类似的问题,但我用了大家给的建议都没能解决问题:(
顺便问问,、。。
adOpenKeyset, adLockOptimistic
这些到底是什么意思啊?
--------------------编程问答-------------------- 如果你确定AdoStuRs里有数据,那么仅Set DataGridStuList.DataSource = AdoStuRs就可以显示了,你的程序无法显示可能是设置了其他属性的问题,你可以直接拖一个DataGrid到窗体,绑定到这个DataGrid试试看 --------------------编程问答-------------------- 很可能是这个问题哦,我照你说的去做。
结果仍然失败,但这次系统说“不能初始化绑定”
之前是无任何提示,就是没东西显示而已
问题仍没解决。。。。 --------------------编程问答-------------------- adOpenKeyset决定数据集打开时游标类型
adLockOptimistic记录集加锁选项,为开放式加锁功能
你的语句没问题,Set DataGridStuList.DataSource = AdoStuRs 这具已经可以了
你看看你vb引用里选中microsoftdata binding collection vb 6.0了吗! --------------------编程问答-------------------- 照楼上朋友的说法,引用了,但还是不行。。。。。。郁闷死 --------------------编程问答-------------------- 直接使用控件试试看能不能绑定上。。 --------------------编程问答-------------------- 错误行? --------------------编程问答-------------------- 改为:
Set DataGridStuList.DataSource = AdoStuRs.clone
--------------------编程问答-------------------- 都不行啊,不得已,只好改用adodc控件了 --------------------编程问答-------------------- adosturs.open sql,conn,1,1
Set DataGridStuList.DataSource = AdoStuRs
DataGridStuList.Refresh
你这样看看 --------------------编程问答-------------------- 楼主你好,这个问题我遇到过,这是因为你在DateGrid属性里修改了“列”选项卡中的“标题”而未给相应修改标题后的列指定绑定到数据库的哪个字段。如果不设置,VB将自动取数据库中的相应字段作为列标题,而一旦设置标题,那么VB就会按照“数据字段”中的内容到Recordset中去寻找相关字段,不输入则就认为字段为"",不知道是不是VB的一个漏洞,你再试试。如果解释的不好,请各位指正。
补充:VB , 数据库(包含打印,安装,报表)