> public class DecendingDateCompare : System.Collections.Generic.IComparer<DateTime> > { > public int Compare(DateTime x, DateTime y) > { > return x.CompareTo(y); > } > }Return logic might be wrong but you get the idea. HTH
>>SortedList<DateTime, Bookmark> BookMarks = new SortedList<DateTime, Bookmark>(); >>>>Where BookMark is a custom object of my creation. I would like to have this list automatically sort in decending order, i.e., the most recent DateTime first, etc.
>> public class DecendingDateCompare : IComparer >> { >> public int Compare(object x, object y) >> { >> // I am passing objects x, y to conform to the IComparer signature?? >> try >> { >> DateTime d1 = DateTime.Parse(x.ToString()); >> DateTime d2 = DateTime.Parse(y.ToString()); >> return d1.CompareTo(d2)*-1; >> } >> catch (System.Exception ex) >> { >> return x.ToString().CompareTo(y.ToString()); >> } >> } >> } >> >>>>If I leave the above declaration of my SortedList as above, no errors, but as soon as I try the below I get errors:
>> SortedList<DateTime, Bookmark> BookMarks = new SortedList<DateTime, Bookmark>(new DecendingDateCompare()); >>>>
>>The best overloaded method match for 'System.Collections.Generic.SortedList<System.DateTime,Marketware.Bookmark>.SortedList(int)' has some invalid arguments >>>>Argument '1': cannot convert from 'Marketware.DecendingDateCompare' to 'int'