Xml.XMLDoc.TNodeListNotification
C++
typedef void __fastcall (__closure *TNodeListNotification)(TNodeListOperation Operation, Xml::Xmlintf::_di_IXMLNode &Node, const System::OleVariant &IndexOrName, bool BeforeOperation);
プロパティ
種類 | 可視性 | ソース | ユニット | 親 |
---|---|---|---|---|
typedef | public | Xml.XMLDoc.hpp | Xml.XMLDoc | Xml.XMLDoc |
説明
TNodeListNotification 型は,XML ノードを追加,削除,または作成するときに TXMLNodeList が行うコールバックの型を示します。
TNodeListNotification は,コンストラクタで TXMLNodeList に提供されるコールバックの型です。TXMLNodeList は,リスト内のノードを追加または削除する前後と新しいノードを作成するときにこの手続きを呼び出します。
Operation は,どの変更が行われようとしているか,または行われたのかを示します。
Node は,変更のフォーカスを持つノードを指定します。使い方は,次の表に示すように操作によって異なります。
オペレーション | ノード |
---|---|
nlInsert |
リストに追加されようとしているノードまたは追加された直後のノード。 |
nlRemove |
リストから削除されようとしているノードまたは削除された直後のノード。 |
nlCreateNode |
新しく作成されたノード。コールバックによって作成され,Node パラメータとして返される。 |
ntElement |
タグ名。 |
ntAttribute |
属性の名前。 |
ntText |
ノードの値。 |
ntCData |
CDATA セクションの値。 |
ntEntityRef |
参照エンティティの名前。 |
ntProcessingInstr |
処理命令の対象。 |
ntComment |
コメントの値(テキスト)。 |
ntDocFragment |
使用されない。 |
IndexOrName は,Operation が nlCreateNode の場合にのみ有効です。IndexOrName はまだ存在していないノードのインデックスを使って Nodes プロパティに割り当てられる値です。IndexOrName の解釈は,次の表に示すように,コールバックが作成するノードの型によって異なります。
NodeType | IndexOrName |
---|---|
ntElement |
タグ名。 |
ntAttribute |
属性の名前。 |
ntText |
ノードの値。 |
ntCData |
CDATA セクションの値。 |
ntEntityRef |
参照エンティティの名前。 |
ntProcessingInstr |
処理命令の対象。 |
ntComment |
コメントの値(テキスト)。 |
ntDocFragment |
使用されない。 |
BeforeOperation は,コールバックが指定された操作の前に発生するか後に発生するかを示します。ノードが挿入または削除される場合,コールバックはまず true に設定された BeforeOperation で呼び出され,操作が行われてから,false に設定された BeforeOperation で 2 回めのコールバックが呼び出されます。ノードを作成する必要がある場合は,BeforeOperation が true に設定された状態で呼び出しが 1 回だけ行われます。