TXLSXStructuralEditRegistry クラス
TXLSXWorksheet.StructuralEditRegistry は、行または列の挿入と削除の後に行われる参照に依存する更新を調整します
組み込みの参加者は、HotXLS の数式、名前、入力規則、条件付き書式、コメント、ハイパーリンク、図形、テーブル、クエリ バインディング、シナリオ、データ テーブル、印刷メタデータ、保護範囲、スパークライン、型付きピボット、認識可能な保持拡張参照を常に更新します
アプリケーションは、組み込みトランザクションを置き換えることなく、独自のシート メタデータ用の順序付き参加者を登録できます
宣言
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;
編集フィールド
| RowFrom | 影響を受ける最初の 1 から始まる行。行が変更されない場合は 0 |
| RowDelta | 正の挿入行数、または負の削除行数 |
| ColFrom | 影響を受ける最初の 1 から始まる列。列が変更されない場合は 0 |
| ColDelta | 正の挿入列数、または負の削除列数 |
参加者の規則
- 参加者は、すべての組み込み参照更新の後に登録順に実行されます
- 同じインターフェイスを複数回登録しても効果はありません
Countは、組み込み更新が常にアクティブであるため、アプリケーション参加者のみを報告します- 参加者は、コールバック内からレジストリを変更したり、別の構造編集を開始したりしてはなりません
例
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);