注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

gb.qin

A Man's心靈的港灣

 
 
 

日志

 
 

cxGrid 动态配置主从结构的Levels和views(轉)  

2010-11-15 15:57:43|  分类: Delphi |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
cxGrid 用法,动态配置主从结构的Levels和views


var
 
  mLevel,childLevel:TcxGridLevel; //声明层次结构
  mView,childView: TcxGridDBTableView;//声明层次视图
begin

 //建主表层次
 mLevel:=grid1.Levels.Add;
//建从表层次
childLevel:=mLevel.Add;  
//建产主表层次视图 
mView:=TcxGridDBTableView(grid1.CreateView(TcxGridDBTableView)); 
  mLevel.GridView:=mView;
//建立从表层次视图
  childView:=TcxGridDBTableView(grid1.CreateView(TcxGridDBTableView));
  childLevel.GridView:=childView;
//设置主表数据源
  mView.DataController.DataSource:=ds1;
//将数据源数据列全部create
  mView.DataController.CreateAllItems;

//设置从表数据源 
cxGrid 动态配置主从结构的Levels和views(轉) - gb.qin - gb.qinchildView.DataController.DataSource:=ds2;
  childView.DataController.CreateAllItems;

//设置从表数据与主表数据关系 
childView.DataController.KeyFieldNames := ‘ID’;
 childView.DataController.MasterKeyFieldNames := ‘ID’;
 childView.DataController.DetailKeyFieldNames := ‘Parentid’;
=======================================================================
cxGrid设置主从其实很辛苦。
假设表Master(mID,aaa,bbb)
Detail(dID,mID,ccc,ddd)
1、建立2个TV,并且注意Level一下。(这个主从的基本,没什么可说的)
2、tvMaster的KeyFieldNames设置为mID。(尽管很多人说要设置,可我试验,不设置也没有关系)
3、tvDetail的KeyFieldNames设置为dID。(尽管很多人说要设置,可我试验,不设置也没有关系)
tvDetail的DetailKeyFieldNames设置为mID
tvDetail的MasterKeyFieldNames设置为mID
4、两个tv的DataController.DataModeController.SyncMode=true(这样设置,可以起到鼠标点过去就可以修改的效果)
OptionView的Navigator=true
OptionBehavior的ImmediatorEditor=true
5、数据集(ADOTable等readonly=false)
6、ADOTAble(Detail)的IndexFieldNames设置dID,或者SQL中必须加入"order by dID"。(否则只会显示一条)。
  评论这张
 
阅读(581)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017