ListViewSort question

A

Adrian

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();
}
 
C

Claes Bergefall

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
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top