protected virtual void UpdateIndex (bool force)
{
if (Table == null)
// FIXME
return;
if (Index == null || force) {
sortColumns = DataTable.ParseSortString(Table, Sort, out sortOrder, false);
Index = dataTable.GetIndex(sortColumns,sortOrder,RowStateFilter,FilterExpression,true);
} else {
Index.Key.RowStateFilter = RowStateFilter;
Index.Reset();
}
int[] records = Index.GetAll ();
if (records != null)
InitDataRowViewArray (records,Index.Size);
else
rowCache = new DataRowView [0];
}