我想绑定一个DevExpress xtraGrid。当我尝试绑定时,编译器会给出一个错误,即gridView数据源是只读的。我尝试了以下方法,我的代码是
NorthwindDataContext db = new NorthwindDataContext();
var r = from p in db.Orders
select p;
var r2 = from p in db.Order_Details
select p;
gridView1.DataSource = r;
gridView2.DataSource = r2;
我收到以下错误: 属性或索引器'DevExpress.XtraGrid.Views.Base.BaseView.DataSource'无法分配 - 它是只读的
我检查了gridView上的列属性,它不是只读的。为什么我收到此错误?实际上我的网格是空的,我打算将它绑定到数据库。
答案 0 :(得分:6)
您需要设置DataSource
的{{1}}来控制GridControl
,而不是GridView
本身。{/ p>
来自DevExpress的网站:How to: Bind a Control to a Database at Runtime
答案 1 :(得分:0)
默认情况下,XtraGrid将识别您的关系并为子表创建克隆视图。如果要更改视图选项(隐藏列,更改格式等等),可以定义自己的GridView,但这需要您设置GridControl的LevelTree属性。