我在WPF中有一个带有自动生成列的DataGrid。以下是在XAML中声明它的方式:
<DataGrid ItemsSource="{Binding Table}"
IsReadOnly="True"
EnableColumnVirtualization="True"
EnableRowVirtualization="True"
AutoGenerateColumns="True"/>
其中Table
是DataContext中的ObservableCollection
。
我的问题是DataGrid的列是随机决定是否可以单击它们以按该列排序。我甚至没有触及CanUserSort属性。可能导致这种情况的原因是什么?
答案 0 :(得分:0)
我意识到DataGrid列可以排序,其类型为
Nullable
和IComparable
,我猜)。所以例如
public class Example {
public long Id { get; set; } // sortable
public Nullable<long> Id2 { get; set; } // not sortable
public SomeOwnClass Ref { get; set; } // not sortable
}