我想根据多重绑定值对 DataGridTextColumn 进行排序 - 文本列同时绑定了日期和时间,因此排序操作应基于DateTime完成。
XMAL 源代码是
<DataGridTextColumn Header="Visit Date" CanUserSort="True" >
<DataGridTextColumn.SortMemberPath>
<MultiBinding StringFormat="{}{0} {1}">
<Binding Path="VisitDate"/>
<Binding Path="VisitTime" />
</MultiBinding>
</DataGridTextColumn.SortMemberPath>
<DataGridTextColumn.Binding>
<MultiBinding StringFormat="{}{0} {1}">
<Binding Path="VisitDate"/>
<Binding Path="VisitTime" />
</MultiBinding>
</DataGridTextColumn.Binding>
</DataGridTextColumn>
视图和视图模型 C# 源代码是
public class Employee
{
public string empName { get; set; }
public string VisitDate { get; set; }
public string VisitTime { get; set; }
}
public class EmployeeInfo
{
public ObservableCollection<Employee> EmployeeList { get; set; }
public EmployeeInfo()
{
EmployeeList = new ObservableCollection<Employee>();
EmployeeList.Add(new Employee { empName = "John", VisitDate = "11/28/2015", VisitTime = "05:12 PM" });
EmployeeList.Add(new Employee { empName = "Potter", VisitDate = "10/28/2015", VisitTime = "04:33 PM" });
EmployeeList.Add(new Employee { empName = "James", VisitDate = "11/27/2015", VisitTime = "09:12 AM" });
}
}