Skip to content

SAIF.Presentation.Web.Controls.AJAX.Infragistics111 operations and processes

This page is the operation catalog and cross-operation hub for this library. Each operation's detailed, step-by-step logic lives in its own page under operations/.

Operation catalog

Operation Intent Trigger Inputs Outputs Rules Tables SQL
Bind page controls to the model Push the page's Model object into every auto-binding control on the page Page code-behind calls BindingManager.DataBind() Page's Model property, Page.Controls tree RootBindingObject set on every iAutoBindingControl BR-AJAX-001, BR-AJAX-002 — —
Bind a control to its model value Populate a single control's Value from the bound model property ASP.NET data-binding phase, or an explicit DataBind call RootBindingObject, BindSource, BindProperty Control's Value set; validation run BR-AJAX-003, BR-AJAX-004, BR-AJAX-006 — —
Push a user edit back to the model Write a user's edited value into the bound model property Editor TextChanged / ValueChange postback event Editor's Value, BoundObject, BindProperty Model property updated; validation run BR-AJAX-004, BR-AJAX-007 — —
Validate a control and surface errors Read validation messages from the bound object and display them Validate() call from bind or edit BoundObject (IDataErrorInfo), BindProperty Page's LblErrorMsg label text set; control styled BR-AJAX-008, BR-AJAX-011, BR-AJAX-012 — —
Aggregate page validity Determine whether the entire page is valid and collect all error messages Reading BindingManager.IsValid / ErrorMessages Page.Controls tree Boolean validity; aggregated error text BR-AJAX-010, BR-AJAX-013 — —
Display hover help Render a hover-triggered help panel above other page content Page render, triggered client-side by the toolkit's HoverMenuExtender ContentText, TargetControlID Rendered hover panel markup BR-AJAX-014, BR-AJAX-016 — —
Load help text from the database Retrieve help text (single entry or full list) for an application code Consumer code calling clsHelpText.GetHelpText or clsHelpTextCollection.GetHelpTexts IDataPortalInfo, ApplicationCode, ReferenceKeyValue (single-entry variant) Populated clsHelpText / clsHelpTextCollection instance(s) BR-AJAX-017, BR-AJAX-019 APPLICATION_HELP_MASTER, APPLICATION_HELP_DETAIL SQL-001, SQL-002
Initialize a grid customizer Build or retrieve the per-grid column/page-size customization state on first load ModalGridCustomizer non-postback page load Model's GridCustomizers list, TargetControls.GridId, designer overrides InfragisticsGridCustomizer instance applied to the grid BR-AJAX-021, BR-AJAX-024 — —
Customize grid columns via the modal popup Let the user pick visible columns/page size in a modal popup and apply or save them User clicks the customizer image, then OK / Apply / Save as Default Checkbox selections, page-size value Grid rebound with new columns/page size; optionally persisted to clsPreferences BR-AJAX-037, BR-AJAX-039 — —
Apply column and page settings to the grid Apply resolved column visibility and page-size state to the live UltraWebGrid Called from grid-customizer initialization and after OK/Apply HidableInfragisticsColumn list, PageSize, ControlPaging Grid's Columns collection and paging settings updated BR-AJAX-040, BR-AJAX-041 — —

Process flow diagram

The following diagram visualizes the primary operational flow across operations.

flowchart TD
    Start([Page load / postback]) --> Bind[Bind page controls to the model]
    Bind --> BindOne[Bind a control to its model value]
    BindOne --> Validate[Validate a control and surface errors]
    Edit([User edits a control]) --> Push[Push a user edit back to the model]
    Push --> Validate
    Validate --> Aggregate[Aggregate page validity]
    Hover([User hovers a trigger]) --> Display[Display hover help]
    Display --> LoadHelp[Load help text from the database]
    GridOpen([User opens grid customizer]) --> Init[Initialize a grid customizer]
    Init --> Apply1[Apply column and page settings to the grid]
    GridOpen --> Customize[Customize grid columns via the modal popup]
    Customize --> Apply2[Apply column and page settings to the grid]
    Customize -->|Save as Default| Persist([clsPreferences.Save])

Inherited operations and processes

Operations in this section originate from base classes or services provided by dependency framework libraries. They are inherited or delegated, not implemented in this library.

From IBusinessCriteria (SAIF.Framework.Core)

Operation Intent Provided by Origin Embedded in
Create business object from criteria Uses an IBusinessCriteria or IBusinessApiCriteria instance with populated DataPortalInfo, exposed as IDataAccess.CreateObject(criteria)† IBusinessCriteria SAIF.Framework.Core Load help text from the database
Retrieve business object from criteria Uses an IBusinessCriteria or IBusinessApiCriteria instance with populated DataPortalInfo, exposed as IDataAccess.RetrieveObject(criteria)† IBusinessCriteria SAIF.Framework.Core Load help text from the database

Origin: These operations are defined in SAIF.Framework.Core / IBusinessCriteria and inherited or delegated by this component. Their step-by-step logic is embedded inline (with > Origin callouts) in the consuming operation's detail page.

Database interactions

The following table summarizes which operations read from or write to the database. Per-step SQL and table citations live in each operation's detail page under operations/.

Operation SQL Tables Type
Load help text from the database SQL-001, SQL-002 APPLICATION_HELP_MASTER, APPLICATION_HELP_DETAIL Read

Failure and edge-case behavior

  • A mistyped BindSource / BindProperty path fails silently — BindingUtility swallows all reflection exceptions, so the control simply remains unbound or unchanged rather than raising an error.*
  • A help lookup that matches no row returns a clsHelpText with empty-string properties rather than Nothing or an exception (BR-AJAX-019).
  • An InfragisticsGridCustomizer override naming a column that does not exist on the target grid throws ApplicationException (BR-AJAX-024).
  • Confirming the modal popup (OK/Apply) only applies choices for the current session; only "Save as Default" persists them (BR-AJAX-037, BR-AJAX-039).

Note: Statements marked with † are derived from dependency library documentation via the Legends CLI. Statements marked with * were inferred from code structure or contextual evidence. Statements marked with ** could not be confirmed; treat as unknown until verified.

Sources

  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/BindingManager.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/AutoBindControlAncestor.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/BindingUtility.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/HoverPanel.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/HoverHelp.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/clsHelpText.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/clsHelpTextCollection.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/ModalGridCustomizer.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/InfragisticsGridCustomizer.vb
  • SAIF.Presentation.Web.Controls.AJAX.Infragistics111/GridCustomizationPanel.vb