wpf的GridViewColumn的排序要用到ICollectionView   的SortDescriptions.

SortDescriptions数组里是 SortDescription, SortDescription有2个参数, 第一个为属性, 第二个为升序降序的选择。
难点主要是第一个, 什么为属性? 属性就是你单条记录所绑定的数据层, 然后在里面选择你想要通过数据层的哪个字段来排序。
示例:
  <DataTemplate x:Key="isVisibleShown">
            <TextBlock Visibility="{Binding Value.IsShowMe, Converter={StaticResource BooleanToVisibilityConverter}}">
                <TextBlock.Text>
                    <PriorityBinding>
                        <Binding Path="Value.Label" Converter="{StaticResource IsPropertyExistConverter}" IsAsync="True"/>
                        <Binding Path="Key" Converter="{StaticResource DebugConverter}" IsAsync="True"/>
                    </PriorityBinding>
                </TextBlock.Text>           
            </TextBlock>      
        </DataTemplate>
        <GridView x:Key="prGridView">
            <GridViewColumn HeaderTemplate="{StaticResource FieldCellTemplate}" CellTemplate="{StaticResource isVisibleShown}"/>
        </GridView>
这个prGridView中column应用了一个DataTemplate, 假如 GridView绑定一个字典Dictinory<string, Model>, 那每条就是一个KeyValuePair, DataTemplate里Text绑定了Model里面的Label, 
然后后台:
            ICollectionView view = CollectionViewSource.GetDefaultView(lsvConfig.ItemsSource);
            if (view.CanSort && view.SortDescriptions.Count <= 0)
            {
                view.SortDescriptions.Add(new SortDescription("Value.Label", ListSortDirection.Ascending));
                view.Refresh();
            }
指定按model里面的label来排序

WPF GridViewColumn Sort DataTemplate的更多相关文章

  1. WPF 动态创建 DataTemplate 及数据绑定

    WPF 动态创建 DataTemplate 及数据绑定 运行环境:Window7 64bit,.NetFramework4.61,C# 6.0: 编者:乌龙哈里 2017-02-22 参考: star ...

  2. WPF 获取 ListView DataTemplate 中控件值

    原文:WPF 获取 ListView DataTemplate 中控件值 版权声明:本文为博主原创文章,未经博主允许可以随意转载 https://blog.csdn.net/songqingwei19 ...

  3. WPF 中的DataTemplate 的嵌套

    <Window x:Class="WPF.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xa ...

  4. WPF : ControlTemplate和DataTemplate的区别

    ControlTemplate用于描述控件本身. 使用TemplateBinding来绑定控件自身的属性, 比如{TemplateBinding Background}DataTemplate用于描述 ...

  5. WPF中的DataTemplate

    <Window x:Class="DateTemplate应用.MainWindow" xmlns="http://schemas.microsoft.com/wi ...

  6. WPF ListBox的DataTemplate例子

    <ListBox Name="lbLogInfo"> <ListBox.ItemTemplate> <DataTemplate> <Gri ...

  7. WPF 后台重写 DataTemplate

    /// <summary> /// 配置类 /// </summary> public static class GridControlDeploy { /// <sum ...

  8. WPF后台生成datatemplate(TreeViewItem例子)

    public void loadCheckListDataTemplate(TreeViewItem tvi) { DataTemplate cdt = new DataTemplate(); Fra ...

  9. wpf 中的DataTemplate 绑定控件

    <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" x ...

随机推荐

  1. hdu 5071 Chat-----2014acm亚洲区域赛鞍山 B题

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5071 Chat Time Limit: 2000/1000 MS (Java/Others)    M ...

  2. SQLite 数据库安装与创建数据库

    嵌入式关系数据库 Ubuntu $ sudo apt-get install sqlite3 sqlite3-dev CentOS, or Fedora $ yum install SQLite3 s ...

  3. LRU java实现

    实现LRU缓存,用到了一个链表和 HashMap, HashMap保证了get/set的时间复杂度是O(1), 链表用来记录 最近最少使用的元素,以便用来淘汰. package lru; /** * ...

  4. EF Core 日志跟踪sql语句

    EF Core 日志跟踪sql语句 官方文档链接:https://docs.microsoft.com/en-us/ef/core/miscellaneous/logging 1.新增自定义ILogg ...

  5. 搭建sftp服务+nginx代理

    在公司,经常会用到sftp服务,比如两个公司对接生产项目,其中一方,要在sftp上上传pdf文件,另一方公司要在sftp服务器上用nginx代理直接下载pdf文件.下面就说说我在实际中应用到的sftp ...

  6. TP框架---thinkphp模型

    1.获取系统常量信息的方法:在控制器DengLuController里面下写入下面的方法,然后调用该方法. public function test() { //echo "这是测试的&qu ...

  7. 关于-O0、O1、O2、O3优化

    少优化->多优化: O0 -->> O1 -->> O2 -->> O3 -O0表示没有优化,-O1为缺省值,-O3优化级别最高 整理自网络,仅供参考 1.- ...

  8. 【shell】获取第10+个位置参数

    转载自:http://www.cnblogs.com/sheldonxu/archive/2012/06/25/2560770.html 在Shell脚本中,可以用$n的方式获取第n个参数,例如,一个 ...

  9. Java for LeetCode 110 Balanced Binary Tree

    Given a binary tree, determine if it is height-balanced. For this problem, a height-balanced binary ...

  10. ubuntu删除文件夹

    -r表示强制删除,-f表示不提示 强制删除文件夹并提示 sudo rm -r 文件夹名 强制删除文件夹不提示 (最暴力) sudo rm -rf 文件夹名