手机版

分析WPF绑定层次数据的具体应用

时间:2021-11-20 来源:互联网 编辑:宝哥软件园 浏览:

在实际的项目应用中有很多类型的层次数据,WPF提供了一个很好的数据绑定机制。最常用的是列表框和树视图控件。1.列表框和树视图控件的区别1。ListBox显示单级数据集,而TreeView可以显示单级和多级数据集;2.通过ListBox可以在UI级显示良好的数据显示效果,可以对数据集合进行排序、分组、过滤;3.TreeView显示为树形结构的多级数据集,良好的数据显示效果也可以通过Templete和Style属性来定义。第二,ListBox控件示例1。列表框将数据绑定到组:使用列表框。GridStyle标记,HeaderTemplate属性用于定义组头的外观:复制代码如下:代码listboxitemsource=' { binding path=data } '列表框。GridStyle GroupStyle。header template data template stack panel图像源='xxx.jpg'/标签内容=' c : '/stack panel/DataTemplate/Group。标题模板/列表框。gridstyle./listbox,这样就可以创建类似于WINDOWS文件管理器的效果:

2.列表框一些使用经验:/1 如果要实现类似窗子的漂亮的界面效果并进行分组,需要自定义GroupStyle的样式,否则WPF会使用内建的GroupStyle,也可以引用GroupStyle .默认静态属性/2列表框只能定义一层数据结构,在列表框中的项目里再次使用列表框,后列表框里的ItemSource不会继承上一层列表框的项目源中的数据集合,如有如下数据集合:复制代码代码如下:公共列表组=新列表组();团体。添加(新组);复制代码代码如下:公共类组{ public int Id { get设置;}公共字符串名称{获取设置;}私有列表框框=新ListBox();公共列表框框{获取{退货箱} } }列表框的项目源绑定列表组的数据集合,其项目中的列表框绑定列表框,则项目中的列表框是无法获取列表框这个数据集合的;三、树形视图控件示例1.有如上数据集合,使用TreeView绑定多层数据集合:复制代码代码如下:代码TreeView x : name=' main tree ' FocusVisualStyle=' { x : null } ' items source=' { Binding Groups } ' TreeView .itemcontainers Style目标类型=“{ x : type TreeViewItem }”Setter属性=' IsExpanded ' Value=' { Binding IsExpanded,Mode=TwoWay}'/Setter属性选择了“=”值=“{选择了绑定,模式=双向}”/Setter属性='字体粗细'值='正常'/样式.触发器触发器属性='IsSelected '值='真'设置器属性='FontWeight '值='粗体'/触发器/样式。触发器/样式/树形视图项目容器样式树视图.资源层次数据模板数据类型='{x:Type m:GroupVO} '项目源=“{绑定框}”堆栈面板方向='水平'标签内容=' {绑定路径=友好名称} '/标签复选框垂直对齐=“中心”已选中=“{绑定路径=已选中}”/复选框/堆栈面板/层次数据模板数据模板数据类型=' { x :型m 3360盒子VO } '网格边距='0,5,5,10 '鼠标行定义行定义/行定义/网格。行定义网格。列定义列定义宽度=' * '/列定义列定义宽度=' 6 * '/列定义/网格。列定义图像源='/资源/图像/shgbit.png '宽度='50 '垂直对齐='顶部'网格。列="0"网格。行=' 0 '/图像标签网格RowSpan='2 '网格。行="0"网格。列='0 '边距='5,5,0,0 '内容=' {绑定路径=友好名称} '/标签/数据模板/树视图。资源/TreeViewHierarchicalDataTemplate属性为层级数据模板,它继承数据集合的层级结构,要表示树的层级依赖关系必须使用HierarchicalDataTemplate。 属性绑定数据使用双向的是为双向属性,当源数据或目标被改变是更新另一方的数据。在层次树表示中的典型应用就是:用检验盒进行子节点的选中和未选中的状态传递。

版权声明:分析WPF绑定层次数据的具体应用是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。