0

我正在使用 Telerik GridView,并且在尝试对由 List<> 组成的列进行排序时遇到问题。在这个论坛条目中,Telerik 团队指出,无论 Silverlight 版本如何,网格都可以对 IComparable 进行排序和分组/过滤 IEquatable<>。在下面的 xaml 中,您将看到网格中的四列。SVOs 专栏是我遇到的问题。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>
4

1 回答 1

1

你可以扩展列表类并实现 IComparable 和 IEquatable 方法吗?

public class ComparableList<T> : List<T>, 
   IComparable<List<T>>, IEquatable<List<T>> 
{
    // Implement IComparable and IEquatable using your rules.
}
于 2010-05-20T15:10:17.313 回答