Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/310.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# 当数据实现IEditableObject时,为什么WPF datagrid不能排序?_C#_Wpf_Datagrid - Fatal编程技术网

C# 当数据实现IEditableObject时,为什么WPF datagrid不能排序?

C# 当数据实现IEditableObject时,为什么WPF datagrid不能排序?,c#,wpf,datagrid,C#,Wpf,Datagrid,在WPF中,自动支持排序-用户可以单击要排序的列标题。Datagrid还自动支持事务性编辑 如果元素支持。也就是说,用户开始编辑行时,以及完成提交或取消时,都会通知您 但是如果我让我的数据实现IEdtiableObject,列排序将停止工作。也就是说,除非我显式地设置属性,否则标题不再可单击,即使这样,单击列也不会起任何作用 那么为什么会发生这种情况,我该如何解决? 更新:问题的前提被证明是错误的。问题不在于排序出于某种原因关心IEditableObject接口。相反,我将这些对象存储在Bin

在WPF中,自动支持排序-用户可以单击要排序的列标题。Datagrid还自动支持事务性编辑 如果元素支持。也就是说,用户开始编辑行时,以及完成提交或取消时,都会通知您

但是如果我让我的数据实现IEdtiableObject,列排序将停止工作。也就是说,除非我显式地设置属性,否则标题不再可单击,即使这样,单击列也不会起任何作用

那么为什么会发生这种情况,我该如何解决?


更新:问题的前提被证明是错误的。问题不在于排序出于某种原因关心IEditableObject接口。相反,我将这些对象存储在BindingList中,BindingList不支持排序。

您是使用自动生成的列还是显式设置它们?在第二种情况下,您可以发布列定义吗?问题证明是不正确的。问题不在于数据实现了IEditableObject,而是我将它们存储在绑定列表中,而绑定列表是不可排序的。