Skip to content

SAIF.Presentation.Web.Controls.AJAX.Infragistics111 overview

Documentation context: Packaged Component (NuGet)

SAIF.Presentation.Web.Controls.AJAX.Infragistics111 is a WebForms server-control library that layers AJAX Control Toolkit and Infragistics 11.1 behavior onto the SAIF presentation stack. It provides three capability groups: auto-binding editors that bind themselves to a page model by reflection and surface IDataErrorInfo validation messages; hover help controls built on the toolkit's HoverMenuExtender, optionally fed from the APPLICATION_HELP_* tables through two BOF business objects; and an Infragistics grid customizer that lets a user choose visible grid columns and page size in a modal popup and persist those choices as user preferences.

Purpose

  • Provide reflection-based, two-way, convention-driven data binding between page controls and a hosting page's Model property (AutoBindTextbox, AutoBindWebMaskEdit, AutoBindWebDateTimeEdit, BindingManager), including validation surfaced through the bound object's IDataErrorInfo.
  • Provide hover-help UI (HoverPanel, HoverLabel, HoverPicture, HoverHelp, HoverHelpControl) built on the AJAX Control Toolkit's HoverMenuExtender, optionally backed by the clsHelpText / clsHelpTextCollection BOF business objects reading the APPLICATION_HELP_MASTER / APPLICATION_HELP_DETAIL tables.
  • Let a user customize an UltraWebGrid's visible columns and page size in a modal popup (ModalGridCustomizer, InfragisticsGridCustomizer) and persist those choices as per-user preferences through clsPreferences.
  • Consumed by SAIF WebForms presentation projects that host UltraWebGrid instances and need reflection-based model binding, contextual hover help, and per-user grid customization without hand-written binding or validation code.

Responsibilities

  • Own the reflection/TypeDescriptor-based binding contract (iAutoBindingControl, BindingUtility) that lets page controls read from and write to an arbitrary model object graph via dotted paths.
  • Own presentation of contextual hover help, including the two-table database read used to populate it.
  • Own the modal grid-customization workflow: column visibility, page size, and persistence of user choices via clsPreferences.

Key components

  • SAIFAJAXControlAncestor: root ancestor (CompositeControl) for every control in this library.
  • AutoBindControlAncestor and its concrete editors: reflection-based two-way binding and validation.
  • BindingManager / BindingUtility: page-level binding orchestration and reflection helpers.
  • HoverPanel family: hover-help presentation controls.
  • ModalGridCustomizer / InfragisticsGridCustomizer family: grid column/page-size customization and preference persistence.
  • clsHelpText / clsHelpTextCollection: BOF business objects backing hover help content.

Sources

  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/SAIF.Presentation.Web.Controls.AJAX.Infragistics111.vbproj
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/My Project/AssemblyInfo.vb
  • SAIF.BOF.Presentation.Web.Infragistics111.nuspec