DevExpress gridcontrol Master-Detail绑定到对象类型
数据库:C_ProductPlan ,C_ProductPlanItem
DTO定义:(实现每个计划条目-Master,对应多个ProcessInfo-Detail)
[DataContract]
[Serializable]
public class PlanInfo:C_ProductPlan
{
public PlanInfo()
{
Items = new List<ProducePlanItem>();
} [DataMember]
public List<ProducePlanItem> Items { get; set; }
} [DataContract]
[Serializable]
public class ProducePlanItem :C_ProductPlanItem
{ public ProducePlanItem()
{
ProcessConfig = new List<ProcessInfo>();
} [DataMember]
public List<ProcessInfo> ProcessConfig { get; set; } } [Serializable]
public class ProcessInfo
{
public String Name{get;set;}
public int Order{get;set;}
public bool? IsChecked{get;set;}
public String Memo{get;set;}
}
UI定义:
index-是行记录,relationIndex是对应的子集合序号(可以有多个子集合),IsEmpty=true时主列表前面的"+"灰色
getCount 返回最大的子集合数
public class ProducePlanItems : ArrayList, IRelationList
{
public ProducePlanItems()
{ } #region IRelationList 成员 public System.Collections.IList GetDetailList(int index, int relationIndex)
{
return this[index].ProcessConfig;
} public string GetRelationName(int index, int relationIndex)
{ return "ProcessConfig";
} public bool IsMasterRowEmpty(int index, int relationIndex)
{
return false;
} public int RelationCount
{
get { return ; }
} #endregion public virtual new ProducePlanItem this[int index]
{
get { return base[index] as ProducePlanItem; }
}
}
需要引用Dexexpress.Data.dll,
1.gridview-MainView 绑定到UI中定义的ProducePlanItems.
2.添加一个level1 将level1重命名称ProcessConfig(对应上面IRelationList.GetRelationName的返回
3.level1 添加 gridview2 ,需要手动设置gridview的列,可以设置gridview2的ViewCaption
4.获取数据后将items转化成producePlanItems,并绑定到UI
DevExpress gridcontrol Master-Detail绑定到对象类型的更多相关文章
- element-ui 使用 Select 组件给 value 属性绑定对象类型
qq_36437172 2020-06-28 22:38:49 778 收藏 分类专栏: element-ui 文章标签: element-ui Select 组件 value 属性 绑定 对象类 ...
- DevExpress GridControl导出ExportToXls 数字类型显示成货币格式
用Dev开发很习惯直接用自带控件导出Excel,现在很少使用原生的Excel API去操作了.除非需要详细的控制. 但别人家封装好的就得按人家的规则的.在使用GridControl导出Excel时发现 ...
- DevExpress GridControl使用(转)
DevExpress GridControl使用 (一)原汁原味的表格展示 Dev控件中的表格控件GridControl控件非常强大.不过,一些细枝末节的地方有时候用起来不好找挺讨厌的.使用过程中,多 ...
- Win10 UWP开发系列:实现Master/Detail布局
在开发XX新闻的过程中,UI部分使用了Master/Detail(大纲/细节)布局样式.Win10系统中的邮件App就是这种样式,左侧一个列表,右侧是详情页面.关于这种 样式的说明可参看MSDN文档: ...
- DevExpress GridControl使用方法
一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 (1).gridView.AddN ...
- ASP.NET Core的配置(3): 将配置绑定为对象[下篇]
我们在<读取配置信息>通过实例的形式演示了如何利用Options模型以依赖注入的方式直接获取由指定配置节绑定生成的Options对象,我们再次回顾一下当初我们编写的程序.如下面的代码片段所 ...
- ASP.NET Core的配置(3): 将配置绑定为对象[上篇]
出于编程上的便利,我们通常不会直接利用ConfigurationBuilder创建的Configuration对象读取某个单一配置项的值,而是倾向于将一组相关的配置绑定为一个对象,我们将后者称为Opt ...
- DevExpress GridControl 使用方法技巧 总结 收录整理
一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...
- Devexpress GridControl z
http://minmin86121.blog.163.com/blog/static/4968115720144194923578/ 1 AllowNullInput=False; --Devexp ...
随机推荐
- xe7 Unresolved external CSPIN.OBJ
工程里打开使用了CSPIN控件的界面窗体,再编译就好了 [ilink32 Error] Error: Unresolved external 'Vcl::Controls::TControl::Set ...
- oracle 数据字典
select * from dictionary; --数据字典 数据字典是Oracle存放有关数据库信息的地方,其用途是用来描述数据的. 比如一个表的创建者信息,创建时间信息,所属表空间信息,用户访 ...
- 基于OpenGL编写一个简易的2D渲染框架-07 鼠标事件和键盘事件
这次为程序添加鼠标事件和键盘事件 当检测到鼠标事件和键盘事件的信息时,捕获其信息并将信息传送到需要信息的对象处理.为此,需要一个可以分派信息的对象,这个对象能够正确的把信息交到正确的对象. 实现思路: ...
- win10为什么不能把文件直接拖拽
- for循环语句个人小结
重新看了一下光盘上的用for循环写一个菱形的答案,发现了其实有几点是可以灵活运用的: 1,当定义行数的时候,也可以用相等的间断的数字隔开,比如 for(int a = 5; a >= 1; a- ...
- 强关联二维材料1T—TaS2晶体
我校物理系张远波教授课题组通过一种新的实验方法——可控电荷插层,实现了对强关联二维材料1T—TaS2晶体相变的全面研究.1月26日,相关研究论文Gate-tunable phase transitio ...
- Telephone interview with Youyou Tu
"Good News for the National Holiday!" Telephone interview with Youyou Tu following the ann ...
- for of 与 for in 的区别
遍历数组通常使用for循环,ES5的话也可以使用forEach,ES5具有遍历数组功能的还有map.filter.some.every.reduce.reduceRight等,只不过他们的返回结果不一 ...
- hdoj1114 Piggy-Bank(DP 完全背包)
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1114 思路: 题目看着有些绕,其实就是完全背包的变形,需要注意的是这里求最小值,所以需要将dp数组初始 ...
- In case of failure
In case of failure http://acm.hdu.edu.cn/showproblem.php?pid=2966 Time Limit: 60000/30000 MS (Java/O ...