SAIF.Presentation.Web.Controls.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 |
|---|---|---|---|---|---|
| Cascade grid drop-down value lists | Bind a parent and child UltraWebGrid column's value lists and register the client script that filters the child list from the parent's selected value. |
Consuming page calls DataBind() on clsDropDownController (directly or via page-level DataBind). |
Column1, Column2, List1, List2, List1Code, List1Display, List2Code, List2Display, List2Key |
Bound ValueList on both grid columns; populated l1/l2; registered client script block DD |
BR-CTL-003, BR-CTL-004, BR-CTL-005 |
| Generate the cascade script | Build the client-side BeforeEdit<Column2Key> function that replaces the child column's value list based on the parent cell value. |
Called from DataBind (as part of the cascade operation); also callable directly by consumers as a public method. |
l1, l2, Column1.Key, Column2.Key |
A String containing a complete <script> block defining BeforeEdit<Column2Key>(gridName, cellId) |
BR-CTL-001, BR-CTL-002, BR-CTL-003, BR-CTL-006 |
| Restore focus and handle errors after an async refresh | Track the control that should regain focus after a WebAsyncRefreshPanel refresh and surface asynchronous callback failures through a shared error page. |
ASP.NET control lifecycle events Init, PreRender, CreateChildControls, RenderContents on the consuming page. |
ControlsFocus, FocusControlID, DesignMode |
Hidden field <ID>_FOCUS; registered client scripts WARP_FOCUS_CONTROL, WARP_Init, SAIFWarp_Error; assigned ClientSideEvents handlers |
BR-CTL-007, BR-CTL-008, BR-CTL-009, BR-CTL-010, BR-CTL-011 |
| Suppress sentinel dates on focus | Clear a date editor's value when it displays a sentinel min/max date so the user can enter a real date. | Control Init event registers the script; the browser onfocus event on the rendered input then runs it. |
The control's current displayed text | Registered script block SDTE_Focus; an onfocus attribute on the rendered element |
BR-CTL-012, BR-CTL-013 |
| Normalize masked phone and tax-ID values | Return a masked phone number or tax ID as a clean data value instead of the mask's literal formatting characters. | Consuming code-behind reads PhoneValue or TaxIdValue. |
Inherited RawText and Text from WebMaskEdit |
Normalized String |
BR-CTL-014, BR-CTL-015 |
Process flow diagram¶
The following diagram visualizes the primary operational flow across operations.
flowchart TD
Start([Consuming page renders controls]) --> Bind["clsDropDownController.DataBind()"]
Bind --> Gen["GenerateJavaScript()<br>builds BeforeEdit script"]
Gen --> Register["Register script blocks<br>via Page.ClientScript"]
Register --> Focus["Browser: onfocus /<br>RefreshComplete handlers"]
Focus --> Decision{"Sentinel date<br>or async error?"}
Decision -->|Sentinel date| ClearDate(["SAIFWebDateTimeEdit clears value"])
Decision -->|Async error, flags > 1| Redirect(["Browser redirects to /weberror/processError.aspx"])
Decision -->|Neither| ReadValues["Code-behind reads<br>PhoneValue / TaxIdValue"]
Failure and edge-case behavior¶
clsDropDownController.DataBind: an unsetColumn1orColumn2raises aNullReferenceException— no guard exists.clsDropDownController.GenerateJavaScript: anl2entry with aNothingkeyraises aNullReferenceExceptionon.ToUpper— no guard exists.*SAIFWarp: focus-restoration and error-notification failures in the browser are swallowed bytry/catchblocks so the page continues to function.SAIFWebMaskEdit.PhoneValue: onlySystem.Data.StrongTypingExceptionis caught; other exception types propagate.
Related documentation¶
Note: Statements marked with
*were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.
Sources¶
SAIF.Presentation.Web.Controls.Infragistics111/clsDropDownController.vbSAIF.Presentation.Web.Controls.Infragistics111/SAIFWarp.vbSAIF.Presentation.Web.Controls.Infragistics111/SAIFWebDateTimeEdit.vbSAIF.Presentation.Web.Controls.Infragistics111/SAIFWebMaskEdit.vb