40 lines
946 B
C#
40 lines
946 B
C#
|
|
using System;
|
|||
|
|
using System.Collections;
|
|||
|
|
using System.Windows.Forms;
|
|||
|
|
|
|||
|
|
namespace DataStreamInterfaceTest
|
|||
|
|
{
|
|||
|
|
public class LviIDComparer : IComparer
|
|||
|
|
{
|
|||
|
|
int column;
|
|||
|
|
SortOrder order;
|
|||
|
|
|
|||
|
|
public LviIDComparer()
|
|||
|
|
{
|
|||
|
|
column = 0;
|
|||
|
|
order = SortOrder.Ascending;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public LviIDComparer(int column, SortOrder order)
|
|||
|
|
{
|
|||
|
|
this.column = column;
|
|||
|
|
this.order = order;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
public int Compare(object x, object y)
|
|||
|
|
{
|
|||
|
|
Int64 valX = Int64.Parse(((ListViewItem)x).SubItems[column].Text);
|
|||
|
|
Int64 valY = Int64.Parse(((ListViewItem)y).SubItems[column].Text);
|
|||
|
|
|
|||
|
|
if (order == SortOrder.Ascending)
|
|||
|
|
{
|
|||
|
|
return valX > valY ? 1 : valX == valY ? 0 : -1;
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
return valX < valY ? 1 : valX == valY ? 0 : -1;
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
}
|