كيف يمكنك عمل قائمة <> مماثلة؟
-
03-10-2019 - |
سؤال
أنا أستخدم telerik عرض شبكي, ، ووجود مشكلة في محاولة لفرز عمود مصنوع من قائمة <>. في هذه إدخال المنتدى ، ينص فريق Telerik على أن الشبكة يمكنها فرز IComparable و Group/Filter Iequatable <> بغض النظر عن إصدار Silverlight. في XAML أدناه ، سترى الأعمدة الأربعة التي لدي في شبكتي. عمود SVOS هو الذي أواجه مشكلة. يرتبط SVOS بقائمة (serviceorder_dataviewmodel). نظرًا لأن القائمة لا تنفذ icomparable أو iequatable ، لا يمكنني فرز أو مجموعة/تصفية هذا العمود. لذا ، سؤالي هو: كيف يمكنني إنشاء كائن قائمة جديد ينفذ icomparable و iequatable؟ لدينا منطق لتكون قادرًا على تنفيذ 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>
المحلول
هل يمكنك فقط تمديد فئة القائمة وتنفيذ أساليب icomparable و iequatable؟
public class ComparableList<T> : List<T>,
IComparable<List<T>>, IEquatable<List<T>>
{
// Implement IComparable and IEquatable using your rules.
}