Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/303.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 列表视图未对WPF中的日期列进行排序_C#_.net_Wpf_Listview_Date Sorting - Fatal编程技术网

C# 列表视图未对WPF中的日期列进行排序

C# 列表视图未对WPF中的日期列进行排序,c#,.net,wpf,listview,date-sorting,C#,.net,Wpf,Listview,Date Sorting,我想在wpf中使用日期列对列表视图进行排序。但下面的代码是排序字符串,而不是日期。 我已将数据表绑定到列表视图。 这是我的密码 <ListView.View> <GridView x:Name="gvDetails" > <GridViewColumn Header="Header1" Width="130" DisplayMemberBinding="{Binding Column1}" /> <GridViewColumn

我想在wpf中使用日期列对列表视图进行排序。但下面的代码是排序字符串,而不是日期。 我已将数据表绑定到列表视图。 这是我的密码

<ListView.View>
<GridView x:Name="gvDetails" >
<GridViewColumn  Header="Header1"       Width="130"      DisplayMemberBinding="{Binding Column1}" />
<GridViewColumn  Header="Header2"        Width="120"      DisplayMemberBinding="{Binding Column2}"  />
<GridViewColumn  Header="Header3"         Width="120"      DisplayMemberBinding="{Binding Column3}"  />
<GridViewColumn   Header="DateOfEnquiry"   Width="120"     DisplayMemberBinding="{Binding DateOfEnquiry}" />
</GridView>
</ListView.View>
但这不是按日期排序listview日期列,而是仅按字符串排序。
请告知。

我认为此示例将帮助您:

string propertyName = "DateOfEnquiry";

ICollectionView dataView = CollectionViewSource.GetDefaultView(lstvwDetails.ItemsSource);
ListSortDirection direction = ListSortDirection.Ascending;

if (dataView.SortDescriptions.Count > 0 && dataView.SortDescriptions[0].PropertyName == propertyName)
{
    if (dataView.SortDescriptions[0].Direction == ListSortDirection.Ascending) direction = ListSortDirection.Descending;
    else direction = ListSortDirection.Ascending;
}
dataView.SortDescriptions.Clear();
dataView.SortDescriptions.Add(new SortDescription(propertyName, direction));
日期查询的类型是什么?现在是约会时间吗?
string propertyName = "DateOfEnquiry";

ICollectionView dataView = CollectionViewSource.GetDefaultView(lstvwDetails.ItemsSource);
ListSortDirection direction = ListSortDirection.Ascending;

if (dataView.SortDescriptions.Count > 0 && dataView.SortDescriptions[0].PropertyName == propertyName)
{
    if (dataView.SortDescriptions[0].Direction == ListSortDirection.Ascending) direction = ListSortDirection.Descending;
    else direction = ListSortDirection.Ascending;
}
dataView.SortDescriptions.Clear();
dataView.SortDescriptions.Add(new SortDescription(propertyName, direction));