TXFAEventBinding

Unit: HPDFXFAEventScript

Declaração

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;

Comportamento

Descreve um nó virtual do event host; cada ocorrência real repetida de subform recebe um binding e filhos separados

ParentIndex seleciona o binding pai dele, ou -1 para a raiz; Value, Presence e Access descrevem o estado atual da ocorrência

InstanceGroup identifica bindings gerenciados pelo mesmo instance manager, enquanto InstanceCount e os limites de ocorrências descrevem os bounds do manager

Defaults de template inicializam instâncias novas; Repeated identifica nós com uma declaração occur

TXFAWidgetRuntime constrói esses records a partir do template e do contexto atual de datasets antes da execução do engine

Identity é a identidade estável do host para esta ocorrência; ScriptSource contém JavaScript para um objeto de script declarado dentro de variables

Uma Identity vazia usa uma identidade única de índice de binding; forneça identidades estáveis explícitas quando a ordem de bindings puder mudar, para que referências retidas continuem endereçando a mesma ocorrência

Locale carrega o atributo opcional de locale do nó como texto UTF-8; o nó em execução herda o valor de ancestral não vazio mais próximo, com uma cadeia vazia selecionando o locale do usuário

EventActivity fornece xfa.event.name para o binding em execução; TXFAWidgetRuntime define as atividades de eventos e os nomes de contexto de calculate ou validate, enquanto bindings de nível mais baixo vazios usam event

O Domain distingue nós de formulários de nós nativos de datasets, dataGroup e dataValue; o default dele xebdForm preserva os chamadores existentes

DataIdentity referencia a identidade estável de outro binding para conectar um campo ou subform ao nó de dados dele; as leituras de campos e data values então compartilham um único valor vivo

DataBindingEnabled permite a criação implícita de nós de dados quando um prototype repetido de formulário não tem binding de dados existente; campos de runtime com bind match=none deixam False e não expõem nó de dados sintético

InstanceGroup do domínio de dados registra a ocorrência irmã de mesmo nome para a publicação nativa de alvos virtuais; bindings de dados não expõem instance managers de formulários

Attributes contém os atributos efetivos atuais de propriedades; DefaultAttributes contém os atributos de template usados para um nó de propriedades recém-clonado

Name do domínio de propriedades retém o atributo name real, geralmente vazio; o ClassName dele fornece o componente SOM, e os índices de pais dele preservam a hierarquia de propriedades e as ocorrências locais de irmãos

PropertyPath e PropertyOwnerIndex identificam uma propriedade somente de formulários ausente do template; o path usa componentes de ocorrências de classes, e o índice do dono seleciona a ocorrência nativa de formulários no mesmo array de bindings

Bindings somente de formulários de runtime expõem os atributos nativos atuais enquanto os DefaultAttributes deles usam os defaults de schema, então clonar um prototype repetido cria valores default de propriedades em vez de herdar o override de outra instância

Deixe PropertyPath vazio para bindings existentes de propriedades declaradas; o índice de dono associado então fica sem uso

Para exData, XML é o elemento serializado UTF-8 atual e DefaultXML fornece o conteúdo de template para uma instância repetida nova

Um binding de exData com XML vazio começa de um elemento nativo exData vazio; DefaultXML somente de formulários permanece vazio para que uma ocorrência nova não herde o conteúdo estrangeiro importado de outra instância

Strings de entrada XML participam do orçamento de bytes do contexto de eventos; saveXML e loadXML usam o replay validado de respostas nativas e publicam através de xeakLoadXML

XML do domínio de dados carrega os metadados nativos delimitados shallow do runtime: nome do elemento, namespace, valor, atributos, declarações de namespaces, conteúdo não texto ordenado e posições de filhos; DefaultXML não é usado para nós de dados

Os metadados contêm um nó e seus filhos diretos de texto, comentários e processing instructions, evitando uma subtree de descendentes duplicada para cada binding de dados

DataBindingRef é o selector dataRef aparado; DataBindingExplicit distingue um dataRef explicitamente vazio de um binding implícito de nome de campo

DataContextIdentity identifica o escopo nativo real de dados do campo, independentemente de DataIdentity, que identifica a folha selecionada dele

Esses campos permitem que imports de XML reavaliem bindings contra o Data DOM fresco imediatamente, incluindo alvos recém-disponíveis e seleções de descendentes, wildcards, classes e índices

Aplicações comuns usam TXFAWidgetRuntime para construir bindings nativos; chamadores de nível mais baixo podem omitir os metadados XML para nós de dados somente escalares e deixar os campos novos de binding nos valores default deles

APIs relacionadas

Runtime interativo de widgets XFA dinâmicos, Funções FormCalc e XFA Packet DOM