0

我有 SL DataGridComboboxColumn。我已将 SortMemberPath 设置为与 DisplayMemberPath 相同;并且排序不会发生。如果我将 SortMemberPath 设置为与 ValueMemberPath 相同,则会发生排序。但我需要按照 DisplayMember 进行排序。我试过了

        Public Function CompareTo(obj As Object) As Integer Implements System.IComparable.CompareTo
        Return Me.Name.CompareTo(CType(obj, Person).Name)
    End Function

没运气 :(

有什么帮助吗??

TIA。

4

1 回答 1

0

我也有同样的问题。从我所做的研究来看,这是因为底层的 CollectionViewSource 正在进行排序,而 CVS 不知道组合列的任何显示成员(只有值成员/外键),因此它无法按该字段排序。

我想出的唯一解决方案是将 ReadOnly 属性 (AutoGenerateField:=False) 添加到网格数据源,但这是一个垃圾解决方案。

我很惊讶这个问题的报道很少,希望有人有更好的解决方案......

于 2012-04-11T08:01:45.160 回答