现在有产品,包含有制作流程,数据结构大致是
struct process工艺 { public int id { get; set; } public string name { get; set; } } struct product//产品 { public int id { get; set; } public string name { get; set; } public List<procss> procsslist { get; set; } }
界面大致是
当在工艺框中点击了某个工艺,如果在产品列表里面有选中行,则在该行最后一列工艺绑定所点击工艺数据 并产品列表重新添加新的一个空白列
列表前两列显示产品id和名字,后面是把list<process>所有数据展示出来 有多少个就添加多少列再加1个空白列
求救
顶起,有时间帮你试试,感觉不难。
.
这个好像不用写个自定义控件吧,试试ListBox DataGrid 绑定应该能实现
不能用datagrid 我最开始用的是listbox 和 listview 做得 但是项目经理说不好 要求换个 So,you know````````````
并且 用datagrid时listbox那栏显示的是集合两个字
@只做我自己: 说哪里不好就改哪里呀 没必要从头来过吧
这个需求用ListBox和ListView完全可以实现,你们经理说不好我就不太明白了,是不是有什么特殊的要求。
如果确定要自定义控件你先考虑一下要实现哪一类的自定义控件。
最简单的是派生自ListBox扩展为一个新的控件,ListView就是扩展自ListBox。
也可以创建一个UserControl,UserControl是对现有控件的组合,用ItemsControl和TextBlock,通过自定义模板也能实现一个ListBox。
还可以创建一个CustomControl,一般继承自System.Windows.Controls.Control,这样就是创建一个完全定制的控件,但所有的功能都需要自己写,难度大,效率低。
如果通过扩展ListBox就能满足那就扩展,最多写个UserControl。CustomControl在实际开发中写的少。控件开发商基本上都是用CustomControl实现自定义控件。