TTMSFNCCustomDataGridDatabaseAdapter.RemoveAllColumns -> ListIndex Out of Range

The TMSFNCDataGridAdapter has a bug in the for loop. (Index runs to Columns.Count instead of Columns.Count - 1)

procedure TTMSFNCCustomDataGridDatabaseAdapter.RemoveAllColumns;
var
  i: Integer;
begin
  DataInstance.BeginUpdate;
//  for i := 0 to Columns.Count do
  for i := 0 to Columns.Count - 1 do
  begin
    Columns[i].FieldName := '';
    Columns[i].Header := '';
  end;

  Columns.Clear;
  DataInstance.Clear;
  DataInstance.RowCount := 0;
  DataInstance.ColumnCount := 0;
  DataInstance.EndUpdate;
end;
1 Like

Nicely spotted, thanks, fixed!

1 Like

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.