private IComparerCollection GetSecondaryComparers(SortColumnCollection secondarySortOrders)
{
IComparerCollection comparers = new IComparerCollection();
foreach (SortColumn sort in secondarySortOrders)
{
ComparerBase comparer = null;
Column column = this.ColumnModel.Columns[sort.SortColumnIndex];
if (column.Comparer != null)
{
comparer = (ComparerBase)Activator.CreateInstance(column.Comparer, new object[] { this.TableModel, sort.SortColumnIndex, sort.SortOrder });
}
else if (column.DefaultComparerType != null)
{
comparer = (ComparerBase)Activator.CreateInstance(column.DefaultComparerType, new object[] { this.TableModel, sort.SortColumnIndex, sort.SortOrder });
}
if (comparer != null)
comparers.Add(comparer);
}
return comparers;
}