SAIF.Presentation.Web.Binding.Infragistics103 overview¶
Documentation context: Bundled as source only via the repository
.nuspec(SAIF.BOF.Presentation.Web.Infragistics103); not independently packaged as a compiled assembly in that package —SAIF.Presentation.Web.Core.Infragistics103is the primary project packed.
SAIF.Presentation.Web.Binding.Infragistics103 ("ObjectBinder") is a presentation-tier data-binding library that connects SAIF business objects to ASP.NET WebForms controls, including both classic (v10.3 "NetAdvantage classic") and modern Infragistics control families. It performs no database access and enforces no business rules of its own; it delegates validation to the bound business object's IDataErrorInfo/IsValid implementation and surfaces the result as control-level formatting and aggregated error messages.
Purpose¶
- Provide a single manager control (
clsObjectBindManager) that a consuming ASPX page can use to declaratively bind ASP.NET/Infragistics WebForms controls to SAIF business-object properties, in either direction (object → control, control → object, or two-way). - Aggregate and surface validation results computed by the bound business objects (via
IDataErrorInfo/IsValid) as control-level CSS formatting and consolidated error text, without computing rule outcomes itself. - Support supplemental validation scenarios beyond simple property-to-control binding: custom validators (
clsCustomValidator) and dual binders where the displayed value and the validated value come from different object/property pairs.
Responsibilities¶
- Register and coordinate per-control data bindings between WebForms/Infragistics controls and business-object properties through the ~90 overloaded
Add()methods onclsObjectBindManager. - Push business-object values into bound controls (
DataBind()/ObjectToControl()), and pull control values back into business-object properties (BindToObject()/ControlToObject()), using reflection-based property access defined in the shared base classclsObjectBinderBase. - Aggregate validation errors across all registered binders (
Validate()/RefreshValidation()), apply CSS error/valid formatting, and optionally write consolidated error text to anErrorLabeland/orSAIFMessagecontrol. - Provide strongly-typed argument bags (
clsObjectBindingArgsand its nested classes) that parameterize theAdd()overload family for control-family-specific options (padding, grid keys, mask/numeric/date-editor options).
Key components¶
clsObjectBindManager: root orchestrator control; owns all registered binders and exposes the publicAdd()/DataBind()/BindToObject()/Validate()surface.clsObjectBinderBase:MustInheritshared contract and reflection-based services (property get/set, CSS formatting, error harvesting, SAIF-object detection) that every concrete binder implements or reuses.clsObjectBindingArgsand nested argument classes: strongly-typed argument bags for theAdd()overloads.clsCustomValidator: non-control-bound validator supporting Property/Method/Object validation modes.ASPControls\,InfragisticsControls\,InfragisticsClassicControls\: concrete binder families adapting stock ASP.NET WebControls, modernInfragistics.Web.UIcontrols, and classic v10.3 Infragistics controls respectively to theclsObjectBinderBasecontract.Enums.vb: shared public enums and delegates used across all binder families.
Related documentation¶
Sources¶
SAIF.Presentation.Web.Binding.Infragistics103\SAIF.Presentation.Web.Binding.Infragistics103.vbprojSAIF.Presentation.Web.Binding.Infragistics103\clsObjectBindManager.vbSAIF.Presentation.Web.Binding.Infragistics103\clsObjectBinderbase.vbSAIF.BOF.Presentation.Web.Infragistics103.nuspec