0

私は Telerik GridViewを使用しており、List<> で構成された列をソートしようとすると問題が発生します。このフォーラム エントリで、Telerik チームは、Silverlight のバージョンに関係なく、グリッドは IComparable をソートし、IEquatable<> をグループ化/フィルター処理できると述べています以下の xaml には、グリッドにある 4 つの列が表示されます。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>
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 に答える