WPF如何绑定层次结构数据-创新互联

这篇文章给大家分享的是有关WPF如何绑定层次结构数据的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

石景山网站建设公司创新互联公司,石景山网站设计制作,有大型网站制作公司丰富经验。已为石景山上1000家提供企业网站建设服务。企业网站搭建\成都外贸网站建设要多少钱,请找那个售后服务好的石景山做网站的公司定做!

在实际项目应用中会存在多种类型的层次结构数据,WPF提供了良好的数据绑定机制。其中运用最频繁的就是ListBox和TreeView控件。

一、ListBox和TreeView控件的区别
1.ListBox显示单层次数据集合,TreeView可以显示单层次和多层次数据集合;
2.通过ListBox在UI层面可以展示良好的数据显示效果,对数据集合可以进行排序、分组、过滤操作;
3.TreeView显示为一个多层次的数据集合为树形结构,通过Templete和Style属性同样可以为其定义良好的数据显示效果;

二、ListBox控件示例
1.ListBox绑定数据进行分组:
使用ListBox.GridStyle标签,定义HeaderTemplate属性用来定义组头的外观:


代码如下:


代码
 
 
     
          
                
                         
                          

     

 

 ......
 




这样就可以创建出类似WINDOWS 文件管理器的效果:
  WPF如何绑定层次结构数据

2.Listbox一些使用经验:
/1 如果要实现类似WINDOWS的漂亮的界面效果并进行分组,需要自定义GroupStyle的样式,否则WPF会使用内建的GroupStyle,也可以引用GroupStyle.Default静态属性。
/2 ListBox只能定义一层数据结构,在ListBox中的Item里再次使用ListBox,后ListBox里的ItemSource不会继承上一层ListBox的Item源中的数据集合,如有如下数据集合:


复制代码 代码如下:


public List groups = new List();groups.Add(new Group);........


复制代码 代码如下:


public class Group {
        public int Id { get; set; }
        public string Name { get; set; }
        private List boxes = new List();
        public List Boxes {
            get { return boxes; }
        }
    }



Listbox的ItemSource Binding List的数据集合,其Item中的ListBox Binding List,则Item中的ListBox是无法获取List这个数据集合的;

三、TreeView控件示例

1.有如上数据集合,使用TreeView绑定多层数据集合:


复制代码 代码如下:


代码
 
            
                
            

            
                
                    
                        
                        
                    
                
                
              

                
                    
                        
                            
                        

                        
                            
                            
                        

                        
                            
                

            

        



HierarchicalDataTemplate属性为层级数据模板,它继承数据集合的层级结构,要表示树的层级依赖关系必须使用HierarchicalDataTemplate。
属性绑定数据使用TwoWay是为双向属性,当源数据或目标被改变是更新另一方的数据。在层次树表示中的典型应用就是:用CheckBox进行子节点的选中和未选中的状态传递。

感谢各位的阅读!关于“WPF如何绑定层次结构数据”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


网页标题:WPF如何绑定层次结构数据-创新互联
转载来于:http://pwwzsj.com/article/dsiiei.html