Using the code below, I get this error.
Using the generic type 'System.Collections.Generic.IComparer<T>' requires
'1' type arguments
Please tell me how to put this right.
Adrian.
// Implements the manual sorting of items by columns.
class ListViewItemComparer : IComparer
{
private int col;
public ListViewItemComparer()
{
col = 0;
}
public ListViewItemComparer(int column)
{
col = column;
}
public int Compare(object x, object y)
{
return String.Compare(((ListViewItem)x).SubItems[col].Text,
((ListViewItem)y).SubItems[col].Text);
}
}
// ColumnClick event handler.
private void ColumnClick(object o, ColumnClickEventArgs e)
{
// Set the ListViewItemSorter property to a new
ListViewItemComparer object.
this.listView1.ListViewItemSorter = new
ListViewItemComparer(e.Column);
// Call the sort method to manually sort the column based on the
ListViewItemComparer implementation.
listView1.Sort();
}
Claes Bergefall - 31 Aug 2006 15:52 GMT
I can only guess that the compiler thinks you're refering to
System.Collections.Generic.IComparer when you write IComparer. Do you have a
using System.Collections.Generic; statement at the top by any chance? Try
using the full name (i.e. System.Collections.IComparer)
/claes
> Using the code below, I get this error.
>
[quoted text clipped - 37 lines]
> listView1.Sort();
> }