遇到的问题:
一、DataGrid 默认点击列标题,是对已取到的数据排序。
二、如果给 DataGrid 重新指定数据源(如:我点击搜索按钮或者操作底部的翻页),列标题“保证时间”上的排序箭头就会消失。
解决方法:
先理解下两个属性
Column.SortDirection,可以简单理解成列标题的排序箭头(向上或向下)
Column.SortMemberPath,可以简单理解成这个列所绑定的某个字段名
然后看源码
public partial class Window1 : Window
{
string _columnHeader = ""; //用来记住已点击列标题的 Column.Header
ListSortDirection? _columnListSortDirection = null; //用来记住已点击列标题的 Column.SortDirection
string _columnSortMemberPath = ""; //用来记住已点击列标题的 Column.SortMemberPath
public Window1()
{
InitializeComponent();
dataGrid1.Sorting += DataGrid1_Sorting;
button1.Click += Button1_Click;
//这里最好设置下默认的排序列