TXFAEventBinding
Unité : HPDFXFAEventScript
Déclaration
TXFAEventBinding= record
Name, ClassName: AnsiString;
ParentIndex: Integer;
Value, Presence, Access: AnsiString;
InstanceCount, InstanceGroup: Integer;
MinInstances, MaxInstances: Integer;
DefaultValue, DefaultPresence, DefaultAccess: AnsiString;
Repeated: Boolean;
Identity, ScriptSource, Locale, EventActivity: AnsiString;
Domain: TXFAEventBindingDomain;
DataIdentity: AnsiString;
DataBindingEnabled: Boolean;
Attributes, DefaultAttributes: TXFAEventAttributes;
PropertyPath: AnsiString;
PropertyOwnerIndex: Integer;
XML, DefaultXML: AnsiString;
DataBindingRef, DataContextIdentity: AnsiString;
DataBindingExplicit: Boolean;
end;
Comportement
Décrit un nœud hôte d'événement virtuel ; chaque occurrence réelle de subform répété reçoit un binding et des enfants séparés
ParentIndex sélectionne son binding parent, ou -1 pour la racine ; Value, Presence et Access décrivent l'état courant de l'occurrence
InstanceGroup identifie les bindings gérés par le même instance manager, tandis que InstanceCount et les limites d'occurrences décrivent les bornes du manager
Les valeurs par défaut du template initialisent les nouvelles instances ; Repeated identifie les nœuds avec une déclaration occur
TXFAWidgetRuntime construit ces records à partir du template et du contexte datasets courant avant l'exécution du moteur
Identity est l'identité hôte stable pour cette occurrence ; ScriptSource contient le JavaScript d'un script object déclaré dans variables
Un Identity vide utilise une identité d'index de binding unique ; fournissez des identités explicites stables quand l'ordre des bindings peut changer, pour que les références conservées continuent de pointer vers la même occurrence
Locale porte l'attribut locale optionnel du nœud en texte UTF-8 ; le nœud en cours d'exécution hérite de la valeur d'ancêtre non vide la plus proche, une chaîne vide sélectionnant la locale de l'utilisateur
EventActivity fournit xfa.event.name pour le binding en cours d'exécution ; TXFAWidgetRuntime définit les activités d'événement et les noms de contexte calculate ou validate, tandis que les bindings de bas niveau vides utilisent event
Domain distingue les nœuds de formulaire des nœuds datasets, dataGroup et dataValue natifs ; sa valeur par défaut xebdForm préserve les appelants existants
DataIdentity référence l'identité stable d'un autre binding pour connecter un champ de formulaire ou un subform à son nœud de données ; les lectures de champs et de valeurs de données partagent alors une même valeur dynamique
DataBindingEnabled permet la création implicite de nœud de données quand un prototype de formulaire répété n'a pas de data binding existant ; les champs runtime avec bind match=none le laissent à False et n'exposent aucun nœud de données synthétique
Le InstanceGroup du domaine de données enregistre l'occurrence sœur de même nom pour la publication de cibles virtuelles natives ; les data bindings n'exposent pas d'instance managers de formulaire
Attributes contient les attributs de propriétés effectifs courants ; DefaultAttributes contient les attributs de template utilisés pour un nœud de propriété nouvellement cloné
Le Name du domaine de propriétés conserve l'attribut name réel, généralement vide ; son ClassName fournit le composant SOM et ses index parents préservent la hiérarchie de propriétés et les occurrences sœurs locales
PropertyPath et PropertyOwnerIndex identifient une propriété propre au formulaire absente du template ; le chemin utilise des composants d'occurrence de classe, et l'index propriétaire sélectionne l'occurrence de formulaire native dans le même tableau de bindings
Les bindings runtime propres au formulaire exposent les attributs natifs courants tandis que leurs DefaultAttributes utilisent les valeurs par défaut du schéma, de sorte que cloner un prototype répété crée des valeurs de propriétés par défaut plutôt que d'hériter de l'override d'une autre instance
Laissez PropertyPath vide pour les bindings de propriétés déclarées existants ; son index propriétaire associé reste alors inutilisé
Pour exData, XML est l'élément UTF-8 sérialisé courant et DefaultXML fournit le contenu de template pour une nouvelle instance répétée
Un binding exData avec XML vide démarre depuis un élément exData natif vide ; le DefaultXML propre au formulaire reste vide pour qu'une nouvelle occurrence n'hérite pas du contenu étranger importé d'une autre instance
Les chaînes d'entrée XML participent au budget en octets du contexte d'événement ; saveXML et loadXML utilisent le replay validé de réponses natives et publient via xeakLoadXML
Le XML du domaine de données transporte les métadonnées XML natives superficielles et bornées du runtime : nom d'élément, espace de noms, valeur, attributs, déclarations d'espaces de noms, contenu non textuel ordonné et positions des enfants ; DefaultXML est inutilisé pour les nœuds de données
Les métadonnées contiennent un nœud et ses enfants directs texte, commentaires et instructions de traitement, évitant un sous-arbre descendant dupliqué pour chaque data binding
DataBindingRef est le sélecteur dataRef nettoyé des espaces ; DataBindingExplicit distingue un dataRef vide explicite d'un binding implicite par nom de champ
DataContextIdentity identifie le scope de données natif réel du champ indépendamment de DataIdentity, qui identifie sa feuille sélectionnée
Ces champs permettent aux imports XML de réévaluer immédiatement les bindings par rapport au Data DOM fraîchement mis à jour, y compris les cibles nouvellement disponibles et les sélections descendantes, jokers, classes et indexées
Les applications normales utilisent TXFAWidgetRuntime pour construire les bindings natifs ; les appelants de bas niveau peuvent omettre les métadonnées XML pour les nœuds de données purement scalaires et laisser les nouveaux champs de binding à leurs valeurs par défaut
APIs associées
Runtime XFA dynamique interactif, Fonctions FormCalc et Packet DOM XFA