问题描述
想问下大家,就是GridControl里有DataSource属性,而GridView中也有DataSource属性,不过后者是只可读的;而且貌似GridControl中的DataSource就是它里面GridView的DataSource,那么问题就来了,当一个GridControl中有多个GridView时,GridControl的DataSource是对应哪个GridView的DataSource?什么情况下会用到一个Control多个View??
解决方案
解决方案二:
没有大神回答下吗?这个很难自己测试的呀。。。
解决方案三:
gridcontrol在大多数情况只有一个mainview,,设计器中也只能设置mainview。多view是在主从表这类情况下,根据子表动态生成的。gridcontrol的datasource如果是System.Data.DataTable的话,view中的datasource就是System.Data.DataView,因为用户可以对表格进行筛选,排序等操作,所以当你需要获取用户筛选,排序后的数据时,可以取view的DataSource。
解决方案四:
引用2楼qbilbo的回复:
gridcontrol在大多数情况只有一个mainview,,设计器中也只能设置mainview。多view是在主从表这类情况下,根据子表动态生成的。gridcontrol的datasource如果是System.Data.DataTable的话,view中的datasource就是System.Data.DataView,因为用户可以对表格进行筛选,排序等操作,所以当你需要获取用户筛选,排序后的数据时,可以取view的DataSource。
谢谢您的回复,那么如果说View的DataSource实际上是由Control的DataSource对应形成的DataView的话,那为什么View里有DataRowCount和RowCount两个属性??
解决方案五:
引用3楼inkalsee的回复:
Quote: 引用2楼qbilbo的回复:
gridcontrol在大多数情况只有一个mainview,,设计器中也只能设置mainview。多view是在主从表这类情况下,根据子表动态生成的。gridcontrol的datasource如果是System.Data.DataTable的话,view中的datasource就是System.Data.DataView,因为用户可以对表格进行筛选,排序等操作,所以当你需要获取用户筛选,排序后的数据时,可以取view的DataSource。谢谢您的回复,那么如果说View的DataSource实际上是由Control的DataSource对应形成的DataView的话,那为什么View里有DataRowCount和RowCount两个属性??
之前一直以为DataRowCount就是DataSource中实际有的记录个数和,而RowCount则是View中可见的记录个数和,但是我通过ColumnFilterChanged事件测试了一些,貌似这两个属性没什么区别??
解决方案六:
这2个属性还真没注意过。看了下定义,这两个属性都是从基类BaseView中继承而来,摘要如下:DataRowCount:GetshowmanydatarowsarecontainedwithintheView.RowCount:GetsacountofthetotalnumberofvisiblerowscontainedwithinthecurrentView.我的理解是:在分页的情况下,这2个属性的值应该会不一样,DataRowCount是全部的,RowCount是当前页的。不过GridView(DevExpress.XtraGrid.Views.Grid.GridView)自身并不具有分页功能,所以这2个属性的值永远是一样的。
解决方案七:
用ComponentOne比dev好用多了,速度也快