1

我想根据多重绑定值对 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" });
    }
}
4

0 回答 0