• 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 分组合并的更多相关文章

  1. WPF ListView 分组 Grouping

    在Resource里定义数据源和分组字段: <CollectionViewSource x:Key="listData" Source="{Binding Cate ...

  2. WPF ListView 选中问题

    WPF ListView 选中问题  摘自:http://www.cnblogs.com/BBHor/archive/2013/04/28/VisualTreeHelper-PreviewMouseD ...

  3. [WPF]ListView点击列头排序功能实现

    [转]   [WPF]ListView点击列头排序功能实现 这是一个非常常见的功能,要求也很简单,在Column Header上显示一个小三角表示表示现在是在哪个Header上的正序还是倒序就可以了. ...

  4. Anroid ListView分组和悬浮Header实现

    Anroid ListView分组和悬浮Header实现 分类: Android2014-01-27 12:26 6585人阅读 评论(13) 收藏 举报 listviewheadersection分 ...

  5. C# WPF DataGrid 分组(Group)

    原文:C# WPF DataGrid 分组(Group) 效果如图,每个列的名字可以自定义.我随便用了”File”和”Attachment Name”.  在Window的Resources里面设置S ...

  6. 利用 groupby apply list 分组合并字符

    利用 groupby apply list 分组合并字符 因为需要对数据进行分组和合并字符,找到了以下方法. 有点类似 SQL 的 Group BY. import pandas as pd impo ...

  7. WPF ListView 居中显示

    原文:WPF ListView 居中显示 今天遇到的问题: 方法1:设置GridViewColumn的ActualWidth <ListView > <ListView.View&g ...

  8. WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画

    原文:WPF ListView控件设置奇偶行背景色交替变换以及ListViewItem鼠标悬停动画 利用WPF的ListView控件实现类似于Winform中DataGrid行背景色交替变换的效果,同 ...

  9. 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 ...

随机推荐

  1. 关于 Android 5.0 原生系统网络图标上的感叹号问题解决方法

    解决方案 adb shell settings put global captive_portal_server g.cn 参考 关于 android 5.0 网络图标上的感叹号及其解决办法

  2. Oracle 存储过程异常处理

    Oracle 存储过程异常处理 1.异常的优点    如果没有异常,在程序中,应当检查每个命令的成功还是失败,如  BEGIN  SELECT ...  -- check for ’no data f ...

  3. angular懒加载的一些坑

    写在前面 最近在工作中接触到angular模块化打包加载的一些内容,感觉中间踩了一些坑,在此标记一下. 项目背景: 项目主要用到angularJs作为前端框架,项目之前发布的时候会把所有的前端脚本打包 ...

  4. android实现程序开机自启动

    在安卓中,想要实现app开机自动启动,需要实现拦截广播android.permission.RECEIVE_BOOT_COMPLETED,并且需要使用静态注册广播的方法(即在AndroidManife ...

  5. 大型网站演化(转载 http://homeway.me/2014/12/10/think-about-distributed-clusters/)

    0x01.大型网站演化 简单说,分布式是以缩短单个任务的执行时间来提升效率的,而集群则是通过提高单位时间内执行的任务数来提升效率. 集群主要分为:高可用集群(High Availability Clu ...

  6. Android 5.1 open data flow 数据开启流程

    首先我们来看看下面的关系图: 底层Settings.apk 在Settings -> Data Usage Summary中的某个SIM tab下开启数据开关 android/packages/ ...

  7. 在Repeater中嵌套使用Repeater

    在一般的网站中浏览类别的用户控件通常都位于大多数 ASP.NET 页的左边,它使用户能够按类别快速的查找产品.最近遇到一个客户,因为在他网站上展示的产品并不多,所以要求在原有类别浏览的基础上将产品也加 ...

  8. 【过程改进】 windows下jenkins常见问题填坑

    没有什么高深的东西,1 2天的时间大多数人都能自己摸索出来,这里将自己遇到过的问题分享出来避免其他同学再一次挖坑. 目录 1. 主从节点 2. Nuget自动包还原 3. powershell部署 4 ...

  9. visual Sdudio 快捷键

    项目相关的快捷键 Ctrl + Shift + B = 生成项目 Ctrl + Alt + L = 显示Solution Explorer(解决方案资源管理器) Shift + Alt+ C = 添加 ...

  10. notepad++代码自动补全功能

    可以代码自动补全功能,默认他是没有开启这个功能的,在首选项->备份与自动完成 里面有自动完成这一个设置,可以设置单词补全,也可以设置函数补全,这样写代码就快多了