WPF:ListView 分组合并

- CollectionViewSource 绑定的是从数据库取出的数据ListBind
- 以DeptName为分组依据
<Window.Resources>
<CollectionViewSource x:Key="Data" Source="{Binding ListBind}">
<CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="DeptName"/>
</CollectionViewSource.GroupDescriptions>
</CollectionViewSource>
</Window.Resources>- 以DeptName为分组依据,扩展列头显示科室名称DeptName,
- TextBlock绑定的数据为DeptName的Name,而不是 Text="{Binding Path=DeptName}"
<ListView Name="list_Reg" ItemsSource="{Binding Source={StaticResource Data}}" Style="{StaticResource ListViewStyle}">
<!--分组合并style-->
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Margin" Value="0,0,0,5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}">
<Expander IsExpanded="True" BorderBrush="#FF1975A0" BorderThickness="">
<Expander.Header>
<DockPanel>
<TextBlock FontWeight="Bold" Text="{Binding Path=Name}"
Margin="5,0,0,0" Width="auto"/></DockPanel> </Expander.Header> <Expander.Content> <ItemsPresenter/> </Expander.Content> </Expander> </ControlTemplate> </Setter.Value> </Setter> </Style> </GroupStyle.ContainerStyle> </GroupStyle> </ListView.GroupStyle>
- 后来看到xml的分组
- http://www.cnblogs.com/liuyazhou/archive/2009/09/10/1563886.html

<Window.Resources>
<XmlDataProvider x:Key="OKData" XPath="/Info">
<x:XData>
<Info xmlns="">
<Item ID="" Name="Book1" Price="$32.05" Author="author1" Catalog="Business"/>
<Item ID="" Name="Book2" Price="$32.05" Author="author2" Catalog="Language"/>
<Item ID="" Name="Book3" Price="$32.05" Author="author3" Catalog="Business"/>
<Item ID="" Name="Book4" Price="$32.05" Author="author4" Catalog="Business"/>
<Item ID="" Name="Book5" Price="$32.05" Author="author5" Catalog="Language"/>
<Item ID="" Name="Book6" Price="$32.05" Author="author6" Catalog="Business"/>
<Item ID="" Name="Book7" Price="$32.05" Author="author7" Catalog="Business"/>
<Item ID="" Name="Book8" Price="$32.05" Author="author8" Catalog="Business"/>
</Info>
</x:XData>
</XmlDataProvider>
<CollectionViewSource
x:Key='src' Source="{Binding Source={StaticResource OKData},XPath=Item}"> <CollectionViewSource.GroupDescriptions>
<PropertyGroupDescription PropertyName="@Catalog"/>
</CollectionViewSource.GroupDescriptions>
</CollectionViewSource>
</Window.Resources> <Grid>
<ListView Name="listViewTask" ItemsSource='{Binding Source={StaticResource src}}'
BorderThickness="" SelectionChanged="listViewTask_SelectionChanged" >
<ListView.GroupStyle>
<GroupStyle>
<GroupStyle.ContainerStyle>
<Style TargetType="{x:Type GroupItem}">
<Setter Property="Margin" Value="0,0,0,5"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupItem}"> <Expander IsExpanded="True" BorderBrush="Red" BorderThickness="">
<Expander.Header>
<DockPanel>
<TextBlock FontWeight="Bold" Text="{Binding Path=Name}"
Margin="5,0,0,0" Width=""/>
<TextBlock FontWeight="Bold" Text="{Binding Path=ItemCount}"/>
</DockPanel>
</Expander.Header>
<Expander.Content>
<ItemsPresenter/>
</Expander.Content>
</Expander>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</GroupStyle.ContainerStyle>
</GroupStyle>
</ListView.GroupStyle> <ListView.View>
<GridView>
<GridViewColumn Header="ID" DisplayMemberBinding="{Binding XPath=@ID}" Width=""/>
<GridViewColumn Header="Name" DisplayMemberBinding="{Binding XPath=@Name}" Width=""/>
<GridViewColumn Header="Price" DisplayMemberBinding="{Binding XPath=@Price}" Width=""/>
<GridViewColumn Header="Author" DisplayMemberBinding="{Binding XPath=@Author}" Width=""/>
</GridView>
</ListView.View>
</ListView>
WPF:ListView 分组合并的更多相关文章
- WPF ListView 分组 Grouping
在Resource里定义数据源和分组字段: <CollectionViewSource x:Key="listData" Source="{Binding Cate ...
- WPF ListView 选中问题
WPF ListView 选中问题 摘自:http://www.cnblogs.com/BBHor/archive/2013/04/28/VisualTreeHelper-PreviewMouseD ...
- [WPF]ListView点击列头排序功能实现
[转] [WPF]ListView点击列头排序功能实现 这是一个非常常见的功能,要求也很简单,在Column Header上显示一个小三角表示表示现在是在哪个Header上的正序还是倒序就可以了. ...
- Anroid ListView分组和悬浮Header实现
Anroid ListView分组和悬浮Header实现 分类: Android2014-01-27 12:26 6585人阅读 评论(13) 收藏 举报 listviewheadersection分 ...
- C# WPF DataGrid 分组(Group)
原文:C# WPF DataGrid 分组(Group) 效果如图,每个列的名字可以自定义.我随便用了”File”和”Attachment Name”. 在Window的Resources里面设置S ...
- 利用 groupby apply list 分组合并字符
利用 groupby apply list 分组合并字符 因为需要对数据进行分组和合并字符,找到了以下方法. 有点类似 SQL 的 Group BY. import pandas as pd impo ...
- WPF ListView 居中显示
原文:WPF ListView 居中显示 今天遇到的问题: 方法1:设置GridViewColumn的ActualWidth <ListView > <ListView.View&g ...
- WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画
原文:WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画 利用WPF的ListView控件实现类似于Winform中DataGrid行背景色交替变换的效果,同 ...
- WPF listview item mouse enter/over popup
This is because the routing strategy of the Loaded event is Direct, which means that the routed even ...
随机推荐
- LUA语言注意点归集
统计元素个数接口--只计算以整数为下标的 第一段连续元素的数目 #tab 和 table.getn() http://ju.outofmemory.cn/entry/29450 我们修改table: ...
- 关于 Android 5.0 原生系统网络图标上的感叹号问题解决方法
解决方案 adb shell settings put global captive_portal_server g.cn 参考 关于 android 5.0 网络图标上的感叹号及其解决办法
- PHP5与MySQL数据库操作
1 建立数据库表: 2 读取数据 2.1 建立01.php 2.2 建立member.php 3 修改数据 3.1 建立level.php(修改数据) 3.2 建立up_level.php 4 ...
- iOS-打开word、ppt、pdf、execl文档方式
这里面包括下载和打开文档的操作:需要先导入<AFNetworking>的框架 第一步:创建一个显示文档的view:ReadViewController (1).h的代码如下: @inter ...
- MVC 的各个部分都有那些技术来实现?如何实现?
MVC 的各个部分都有那些技术来实现?如何实现? MVC 是 Model-View-Controller 的简写 "Model" 代表的是应用的业务逻辑(通过JavaBean,EJ ...
- android Thread和Service的区别
http://www.cnblogs.com/devinzhang/archive/2012/01/11/2319433.html (zhuan)
- paper 102:极限学习机(Extreme Learning Machine)
原文地址:http://blog.csdn.net/google19890102/article/details/18222103 极限学习机(Extreme Learning Machine) ...
- JS数组定义【收藏】
最近在学习JS,刚好学到数组,发现章节还蛮多了而且发现了数组的以前好多不知道的东西,顺便整理下: 数组一共有有四种定义的方式 使用构造函数: var a = new Array(); var b = ...
- cvc-complex-type.2.4.c: The matching wildcard is strict, but no declaration can be found for element ‘dubbo:application’. – schema_reference.4: Failed to read schema document
解决办法: 1.直接百度下载一个dubbo.xsd文件 2.myeclispe-->window-->preferences-->xml catalog-->add 完美解决!
- linux线程的实现【转】
转自:http://www.cnblogs.com/zhaoyl/p/3620204.html 首先从OS设计原理上阐明三种线程:内核线程.轻量级进程.用户线程 内核线程 内核线程就是内核的分身,一个 ...