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