TXFAEventBinding

單元:HPDFXFAEventScript

宣告

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;

行為

描述一個虛擬事件宿主節點;每個實際的重複子表單出現個體都會收到獨立的繫結與子節點

ParentIndex 選取其父繫結,根節點為 -1;Value、Presence 與 Access 描述目前出現個體的狀態

InstanceGroup 識別由同一個執行個體管理員管理的繫結,InstanceCount 與出現個體上下限則描述管理員的邊界

範本預設值用來初始化新執行個體;Repeated 識別帶 occur 宣告的節點

TXFAWidgetRuntime 會在引擎執行前,從範本與目前的資料集情境建立這些記錄

Identity 是這個出現個體的穩定宿主識別;ScriptSource 存放宣告在 variables 內的 script object 的 JavaScript 原始碼

Identity 為空時使用唯一的繫結索引識別;當繫結順序可能改變時,請提供穩定的明確識別,讓保留的參考持續指向同一個出現個體

Locale 以 UTF-8 文字攜帶節點的選填 locale 屬性;執行節點會繼承最近一個非空的上層值,整條鏈都為空時採用使用者地區設定

EventActivity 為執行中的繫結提供 xfa.event.name;TXFAWidgetRuntime 會設定事件活動與 calculate 或 validate 的 context 名稱,空值的低階繫結則使用 event

Domain 區分表單節點與原生 datasets、dataGroup、dataValue 節點;預設值 xebdForm 保留既有呼叫端的行為

DataIdentity 引用另一個繫結的穩定識別,用來把表單欄位或子表單連到其資料節點;欄位與資料值的讀取隨後共用同一個即時值

DataBindingEnabled 允許在重複表單原型沒有既有資料繫結時隱含建立資料節點;bind match=none 的執行階段欄位會把它留成 False,且不公開合成資料節點

資料域的 InstanceGroup 記錄同名兄弟出現個體,供原生虛擬目標發布使用;資料繫結不公開表單執行個體管理員

Attributes 存放目前生效的 property 屬性;DefaultAttributes 存放新複製 property 節點所用的範本屬性

Property 域的 Name 保留實際的 name 屬性,通常為空;其 ClassName 提供 SOM 元件,父索引則保留 property 階層與本機兄弟出現個體

PropertyPath 與 PropertyOwnerIndex 識別範本中不存在的表單限定 property;路徑使用類別出現個體元件,owner 索引在同一繫結陣列中選出原生表單出現個體

執行階段的表單限定繫結會公開目前的原生屬性,DefaultAttributes 則使用結構描述預設值,因此複製重複原型時建立的是預設 property 值,而不是繼承另一個執行個體的覆寫

既有的已宣告 property 繫結請把 PropertyPath 留空;此時對應的 owner 索引不會被使用

對 exData 而言,XML 是目前已序列化的 UTF-8 元素,DefaultXML 提供新重複執行個體的範本內容

XML 為空的 exData 繫結從空的原生 exData 元素開始;表單限定的 DefaultXML 保持為空,讓新出現個體不會繼承另一個執行個體匯入的外部內容

XML 輸入字串計入事件 context 的位元組預算;saveXML 與 loadXML 使用已驗證的原生回應重播,並透過 xeakLoadXML 發布

資料域的 XML 攜帶執行階段受限的淺層原生 XML 中繼資料:元素名稱、命名空間、值、屬性、命名空間宣告、有序的非文字內容與子節點位置;資料節點不使用 DefaultXML

這份中繼資料包含一個節點及其直接的文字、註解與處理指示子節點,避免為每個資料繫結複製整棵後代子樹

DataBindingRef 是修剪過的 dataRef 選擇器;DataBindingExplicit 區分明確的空 dataRef 與隱含的欄位名稱繫結

DataContextIdentity 獨立於 DataIdentity(後者識別所選的葉節點),識別欄位實際的原生資料範圍

這些欄位讓 XML 匯入能立即對最新的 Data DOM 重新評估繫結,包括新可用的目標以及後代、萬用字元、類別與索引選取

一般應用程式使用 TXFAWidgetRuntime 建立原生繫結;低階呼叫端可以對純量資料節點省略 XML 中繼資料,並讓新的繫結欄位保持預設值

相關 API

互動式動態 XFA Widget 執行環境、FormCalc 函式與XFA 封包 DOM