---
title: SAIF.Presentation.Web.Controls.AJAX.Infragistics111 overview
summary: High-level purpose, scope, and responsibilities for this library.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Controls.AJAX.Infragistics111
reference_type: package
---

# 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.

## Related documentation
- [Index](index.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)

## 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`
