HotXLS-dokumentation

TXLSXStructuralEditRegistry-klassen

TXLSXWorksheet.StructuralEditRegistry koordinerer referencefølsomme opdateringer efter række- eller kolonneindsættelse og -sletning

Indbyggede deltagere opdaterer altid HotXLS-formler, navne, valideringer, betingede formater, kommentarer, hyperlinks, tegninger, tabeller, forespørgselsbindinger, scenarier, datatabeller, udskriftsmetadata, beskyttede intervaller, sparklines, typede pivottabeller og genkendelige bevarede udvidelsesreferencer

Applikationer kan registrere ordnede deltagere for deres egne arkmetadata uden at erstatte den indbyggede transaktion

Deklarationer

type
  TXLSXStructuralEdit = record
    RowFrom: Integer;
    RowDelta: Integer;
    ColFrom: Integer;
    ColDelta: Integer;
  end;

  IXLSXStructuralEditParticipant = interface
    procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
      const Edit: TXLSXStructuralEdit);
  end;

  TXLSXStructuralEditRegistry = class
    procedure RegisterParticipant(
      const Participant: IXLSXStructuralEditParticipant);
    procedure UnregisterParticipant(
      const Participant: IXLSXStructuralEditParticipant);
    procedure Clear;
    property Count: Integer;
  end;

Redigeringsfelter

RowFromFørste 1-baserede berørte række eller nul, når rækker er uændrede
RowDeltaPositivt antal indsatte rækker eller negativt antal slettede rækker
ColFromFørste 1-baserede berørte kolonne eller nul, når kolonner er uændrede
ColDeltaPositivt antal indsatte kolonner eller negativt antal slettede kolonner

Deltagerregler

Eksempel

type
  TMetadataUpdater = class(TInterfacedObject,
    IXLSXStructuralEditParticipant)
  public
    procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
      const Edit: TXLSXStructuralEdit);
  end;

Updater := TMetadataUpdater.Create;
Sheet.StructuralEditRegistry.RegisterParticipant(Updater);
Sheet.InsertRows(4, 2);

Se også