Skip to content

Enable or disable a page or control subtree

This operation toggles the enabled state of a control, a whole page's control collection, or a SAIFMenuTop.clsMenuButton, letting a page switch between read-only and editable modes with one call.

Field Value
Operation ID OP-CORE-013
Trigger Consuming page switching between read and edit modes
Inputs Control, Page, or SAIFMenuTop.clsMenuButton; enable flag
Outputs Enabled/disabled controls
Primary components Utilities.clsControlManager.EnablePageControl (three overloads)
Entry point SAIF.Presentation.Web.Core.Infragistics111/clsControlManager.vb

Steps

  1. For the Page overload, walk the page's control collection and apply the flag to each child. (BR-CORE-034)
  2. For the Control overload, apply the flag to the control (recursing into children where the control has them).
  3. For the SAIFMenuTop.clsMenuButton overload, apply the flag to the menu button so top-menu actions can be suppressed.
  4. Origin: Delegates to SAIFMenuTop.clsMenuButton in SAIF.Presentation.Web.Controls.V2.Menu (local project reference).

Process flow

The following diagram visualizes this operation's control flow.

flowchart TD
    Start([EnablePageControl called]) --> D1{Overload?}
    D1 -->|Page| S1[Walk full control collection, apply flag to every child]
    D1 -->|Control| S2[Apply flag to control, recurse into children]
    D1 -->|clsMenuButton| S3[Apply flag to menu button]
    S3 --> S4[Delegates to SAIF.Presentation.Web.Controls.V2.Menu]

Failure and edge-case behavior

  • No recursion-depth guard is documented for the Control overload; a deeply nested control tree would rely on the runtime call stack.**

Sources

  • SAIF.Presentation.Web.Core.Infragistics111/clsControlManager.vb