TXFAEventBinding
Unit: HPDFXFAEventScript
Declaration
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;
Behavior
Beschrijft één virtuele event-host-node; elke echte herhaalde subform-occurrence ontvangt een aparte binding en kinderen
ParentIndex kiest diens ouder-binding, of -1 voor de root; Value, Presence en Access beschrijven de huidige occurrence-status
InstanceGroup identificeert bindings beheerd door dezelfde instance manager, terwijl InstanceCount en occurrence-limieten de manager-grenzen beschrijven
Template-defaults initialiseren nieuwe instances; Repeated identificeert nodes met een occur-declaratie
TXFAWidgetRuntime bouwt deze records vanuit de template en de huidige datasets-context vóór engine-executie
Identity is de stabiele host-identiteit voor deze occurrence; ScriptSource bevat JavaScript voor een script-object gedeclareerd binnen variables
Een lege Identity gebruikt een unieke binding-index-identiteit; lever stabiele expliciete identiteiten aan wanneer de bindingsvolgorde kan veranderen zodat vastgehouden referenties dezelfde occurrence blijven aanspreken
Locale draagt het optionele locale-attribute van de node als UTF-8-tekst; de uitvoerende node erft de dichtstbijzijnde niet-lege voorouderwaarde, met een lege keten die de user locale kiest
EventActivity levert xfa.event.name voor de uitvoerende binding; TXFAWidgetRuntime zet event activities en calculate- of validate-context-namen, terwijl lege lower-level bindings event gebruiken
Domain onderscheidt formulier-nodes van native datasets-, dataGroup- en dataValue-nodes; diens default xebdForm behoudt bestaande aanroepers
DataIdentity referert de stabiele identiteit van een andere binding om een formulierveld of subform te verbinden met diens data-node; veld- en data-waarde-reads delen dan één live waarde
DataBindingEnabled staat impliciete data-node-creatie toe wanneer een herhaald formulier-prototype geen bestaande databinding heeft; runtime-velden met bind match=none laten hem False en leggen geen synthetische data-node bloot
Data-domein-InstanceGroup registreert de same-name sibling-occurrence voor native virtuele target-publicatie; data-bindingen leggen geen formulier-instance-managers bloot
Attributes bevat effectieve huidige property-attributes; DefaultAttributes bevat template-attributes die worden gebruikt voor een nieuw gekloonde property-node
Property-domein-Name behoudt het echte name-attribute, meestal leeg; diens ClassName levert de SOM-component en diens ouderindices behouden property-hiërarchie en lokale sibling-occurrences
PropertyPath en PropertyOwnerIndex identificeren een form-only-property die in de template ontbreekt; het pad gebruikt class-occurrence-componenten, en de owner-index kiest de native formulier-occurrence in dezelfde binding-array
Runtime form-only-bindings leggen huidige native attributes bloot terwijl diens DefaultAttributes schema-defaults gebruiken, dus het klonen van een herhaald prototype creëert default property-waarden in plaats van de override van een andere instance te erven
Laat PropertyPath leeg voor bestaande gedeclareerde property-bindingen; diens bijbehorende owner-index wordt dan niet gebruikt
Voor exData is XML het huidige geserialiseerde UTF-8-element en levert DefaultXML template-content voor een nieuwe herhaalde instance
Een exData-binding met lege XML begint vanuit een leeg native exData-element; form-only DefaultXML blijft leeg zodat een nieuwe occurrence de geïmporteerde foreign content van een andere instance niet erft
XML-invoerstrings doen mee aan het bytebudget van de event-context; saveXML en loadXML gebruiken gevalideerde native response-replay en publiceren via xeakLoadXML
Data-domein-XML draagt de begrensde shallow native XML-metadata van de runtime: elementnaam, namespace, waarde, attributes, namespace-declaraties, geordende nontext-content en kindposities; DefaultXML wordt voor data-nodes niet gebruikt
De metadata bevat één node en diens directe tekst-, comment- en processing-instruction-kinderen, wat een gedupliceerde afstammingsboom per databinding vermijdt
DataBindingRef is de getrimde dataRef-selector; DataBindingExplicit onderscheidt een expliciet lege dataRef van een impliciete veldnaam-binding
DataContextIdentity identificeert de echte native data-scope van het veld onafhankelijk van DataIdentity, dat diens gekozen blad identificeert
Deze velden laten XML-imports bindingen opnieuw evalueren tegen de verse Data DOM, inclusief nieuw beschikbare targets en descendant-, wildcard-, class- en geïndexeerde selecties
Normale applicaties gebruiken TXFAWidgetRuntime om native bindingen te bouwen; lower-level aanroepers kunnen XML-metadata weglaten voor scalar-only-data-nodes en de nieuwe bindingsvelden op diens defaultwaarden laten
Related APIs
Interactive Dynamic XFA Widget Runtime, FormCalc Functions en XFA Packet DOM