我正在使用Telerik GridView,并且在尝试对由List<>组成的列进行排序时遇到问题。在this论坛条目中,Telerik团队声明网格可以对IComparable和group / filter进行排序IEquatable<>无论Silverlight版本如何。在下面的xaml中,您将看到我的网格中的四列。 SVO专栏就是我遇到的问题。 SVO绑定到List(ServiceOrder_DataViewModel)。由于List没有实现IComparable或IEquatable,我无法对此列进行排序或分组/过滤。所以,我的问题是:如何创建一个实现IComparable和IEquatable的新List对象?我们有逻辑能够实现IComparable和IEquatable,我只是不确定如何实现它。任何帮助将不胜感激!
<d:MVVMRadGridView.Columns>
<telerikGridView:GridViewDataColumn Header="Case Id" UniqueName="Id" CellTemplate="{StaticResource CaseIDLinkCellTemplate}" DataMemberBinding="{Binding Id}" DisplayIndex="0" IsVisible="True" />
<telerikGridView:GridViewDataColumn Header="SVOs" UniqueName="SVOs" CellTemplate="{StaticResource CaseServiceOrdersLinksCellTemplate}" DisplayIndex="1" IsVisible="True" TextWrapping="Wrap" />
<telerikGridView:GridViewDataColumn Header="Type" UniqueName="Type" DataMemberBinding="{Binding Type}" DisplayIndex="2" IsVisible="True" TextWrapping="Wrap" />
<telerikGridView:GridViewDataColumn Header="Status" UniqueName="Status" DataMemberBinding="{Binding Status}" DisplayIndex="3" IsVisible="True" />
</d:MVVMRadGridView.Columns>
答案 0 :(得分:1)
您可以扩展列表类并实现IComparable和IEquatable方法吗?
public class ComparableList<T> : List<T>,
IComparable<List<T>>, IEquatable<List<T>>
{
// Implement IComparable and IEquatable using your rules.
}