예제 #1
0
 private static void FillColRange(TKeyList Items, XlsFile xls, TXlsCellRange Range, int[] Keys, TSortOrder[] SortOrder, IComparer Comparer)
 {
     for (int c = Range.Left; c <= Range.Right; c++)
     {
         object[] Values;
         if (Keys == null)
         {
             int Len = Range.RowCount;
             if (Len > 8)
             {
                 Len = 8;                              //avoid taking up too much memory.
             }
             Values = new object[Len];
             for (int r = 0; r < Values.Length; r++)
             {
                 Values[r] = xls.GetCellValue(Range.Top + r, c);
             }
         }
         else
         {
             Values = new object[Keys.Length];
             for (int r = 0; r < Keys.Length; r++)
             {
                 Values[r] = xls.GetCellValue(Keys[r], c);
             }
         }
         Items.Add(new TKeyItem(c, Values, SortOrder, Comparer));
     }
 }
예제 #2
0
 private static void FillRowRange(TKeyList Items, XlsFile xls, TXlsCellRange Range, int[] Keys, TSortOrder[] SortOrder, IComparer Comparer)
 {
     for (int r = Range.Top; r <= Range.Bottom; r++)
     {
         object[] Values;
         if (Keys == null)
         {
             int Len = Range.ColCount;
             if (Len > 8)
             {
                 Len = 8;                              //avoid taking up too much memory.
             }
             Values = new object[Len];
             for (int c = 0; c < Values.Length; c++)
             {
                 Values[c] = xls.GetCellValue(r, Range.Left + c);
             }
         }
         else
         {
             Values = new object[Keys.Length];
             for (int c = 0; c < Keys.Length; c++)
             {
                 Values[c] = xls.GetCellValue(r, Keys[c]);
             }
         }
         Items.Add(new TKeyItem(r, Values, SortOrder, Comparer));
     }
 }