SAIF.Presentation.Web.Binding.Infragistics111 overview¶
Documentation context: Packaged Component (NuGet)
SAIF.Presentation.Web.Binding.Infragistics111 is SAIF's declarative "object binder" — a two-way data binding and validation framework that connects SAIF BOF business objects to ASP.NET WebForms and Infragistics 11.1 controls, with automatic error-message aggregation and error-state control formatting.
Purpose¶
- Let a WebForms page declare, in code, which control is bound to which business-object property (via
clsObjectBindManager.Addoverloads) instead of hand-writing per-control get/set code. - Move data in both directions: push business-object values into controls (
ObjectToControl) and pull edited control values back onto business objects (ControlToObject), either immediately on a control's change event or in a batched call. - Aggregate validation errors — harvested from bound objects'
IDataErrorInfoimplementation and from application-supplied custom validators — into a single formatted message, and re-style controls to show which fields are in error. - Detect SAIF BOF business objects purely by walking the runtime base-class chain for the names
clsBusinessBase/clsBusinessCollectionBase, without a compile-time reference to the BOF framework.*
Responsibilities¶
- Own the binder registration/lookup collection and per-object validation-key registry for a page (
clsObjectBindManager). - Define and share the binder contract (
Init,ObjectToControl,ControlToObject) plus reflection get/set, padding, and error-formatting helpers common to every concrete binder (clsObjectBinderBase). - Implement one binder per supported ASP.NET or Infragistics 11.1 control, covering both the classic (
WebUI) and current (Web.UI) Infragistics control generations. - Provide strongly-typed binding-argument data contracts so applications configure a binding without long positional
Addcalls. - Support application-defined validation logic (
clsCustomValidator) that participates in the same error pipeline as property-level errors.
Key components¶
clsObjectBindManager: the page-level binding container and only public entry point; owns registration, initialization,DataBind/BindToObject,Validate/RefreshValidation, and error reporting.clsObjectBinderBase: abstract base defining the binder contract and shared reflection/padding/ error-formatting behavior.clsCustomValidator: validation-only binder running an application-supplied delegate.- 24 concrete binders (
clsTextBoxBinder,clsUltraGridBinder,clsWebDataGridBinder, etc.): read and write a specific control's property and subscribe to its change event. clsObjectBindingArgshierarchy andPadArgs: strongly-typed configuration objects passed to theAddoverloads.
Related documentation¶
Note: Statements marked with * were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
SAIF.Presentation.Web.Binding.Infragistics111/SAIF.Presentation.Web.Binding.Infragistics111.vbprojSAIF.Presentation.Web.Binding.Infragistics111/clsObjectBindManager.vbSAIF.Presentation.Web.Binding.Infragistics111/clsObjectBinderbase.vbSAIF.Presentation.Web.Binding.Infragistics111/clsCustomValidator.vb