SAIF.Presentation.Web.Controls.Infragistics103 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/. This library has no business operations in the BOF sense (no AppManager, no OnWrite/OnRetrieve, no transaction boundaries) — the "operations" below are control lifecycle behaviors triggered by the ASP.NET page lifecycle or explicit DataBind() calls from a consuming page.
Operation catalog¶
| Operation | Intent | Trigger | Inputs | Outputs | Rules |
|---|---|---|---|---|---|
| SAIFWarp async-refresh initialization | Register the focus-restoration script and wire the panel's initialization client-side event. | ASP.NET Init event of SAIFWarp. |
ControlsFocus property, Page context. |
Registered client script blocks; ClientSideEvents wiring. |
— |
| SAIFWarp pre-render error/init script registration | Wire the async-refresh error handler and progress-indicator init script before render. | ASP.NET PreRender event of SAIFWarp. |
Page context. |
Registered startup/client scripts; ClientSideEvents.Error wiring. |
BR-4 |
| SAIFWarp child-control setup and hidden-field rendering | Create and keep current the hidden field used to carry the focus target across an async postback. | ASP.NET control-creation and render lifecycle phases. | FocusControlID property. |
Hidden input control {ID}_FOCUS added to Controls and rendered. |
— |
| Cascading dropdown data bind | Bind Column1/Column2 value lists from data sources and register the client-side cascading filter script. | Explicit DataBind() call from a consuming page/control, or ASP.NET data-binding cascade. |
Column1, Column2, List1, List2, List1Code/List1Display/List2Code/List2Display/List2Key. |
Populated Column1.ValueList/Column2.ValueList; registered client script block "DD"; populated l1/l2 collections. |
BR-5 |
| Cascading dropdown JavaScript generation | Generate the client-side filter function that restricts Column2's value list based on Column1's selected value. | Called from within DataBind (see above). |
Populated l1/l2 collections, Column1.Key, Column2.Key. |
A JavaScript string registered as the "DD" client script block. |
BR-5 |
| SAIFWebDateTimeEdit null-date suppression | Blank sentinel "no date" values when the field gains focus. | ASP.NET Init event of SAIFWebDateTimeEdit. |
None beyond the control's own rendered text. | Registered client script SDTE_Focus; an onfocus attribute on the control. |
BR-1 |
| SAIFWebMaskEdit value accessors | Return cleaned phone/tax-ID values instead of raw mask text. | Property read by consuming code (e.g., a page reading the posted-back value). | The control's underlying RawText/Text. |
A cleaned string value. | BR-2, BR-3 |
Process flow diagram¶
The following diagram visualizes the primary cascading-dropdown operational flow, the most complex process in this library.
flowchart TD
Start([Consuming page calls DataBind]) --> Bind[Bind Column1/Column2 ValueList from List1/List2]
Bind --> Reflect[Project List1/List2 items into ListItem via reflection]
Reflect --> Gen[GenerateJavaScript builds BeforeEdit function]
Gen --> Register[RegisterClientScriptBlock 'DD']
Register --> Focus{User edits Column2 cell}
Focus -->|BeforeEnterEditModeHandler fires| Filter[Filter col.ValueList by matching l1/l2 key]
Filter --> End([Filtered options shown in grid cell])
Failure and edge-case behavior¶
clsDropDownController.DataBind: if noTypeConvertertoStringis found for aList1Code/List1Display/List2Code/List2Display/List2Keyproperty, the correspondingListItemfield is silently left blank rather than raising an exception.SAIFWarppre-render: any async-refresh error withflags > 1redirects the entire page to/weberror/processError.aspx(see BR-4).SAIFWebMaskEdit.PhoneValue: catchesSystem.Data.StrongTypingExceptionand returns an empty string on that specific error path.
Related documentation¶
- Index
- Overview
- Architecture
- Dependencies
- Business rules
- Control catalog
- Configuration settings
- API reference
Sources¶
- SAIF.Presentation.Web.Controls.Infragistics103\SAIFWarp.vb
- SAIF.Presentation.Web.Controls.Infragistics103\clsDropDownController.vb
- SAIF.Presentation.Web.Controls.Infragistics103\SAIFWebDateTimeEdit.vb
- SAIF.Presentation.Web.Controls.Infragistics103\SAIFWebMaskEdit.vb