Skip to content

SAIFImageButton

SAIFImageButton is a thin wrapper over the standard ASP.NET ImageButton used by every rendered icon in both SAIFMenu (favourites/applications icons) and SAIFMenuTop (toolbar icons) (BR-MENU-053). It always carries the CSS class SAIFImageButton (BR-MENU-072), and can optionally add an AJAX activity indicator and disable the hosting form while an action is in flight, or fall back to a client-side one-click guard when indicators are disabled (BR-MENU-065).

Purpose

  • Provide a single, consistently styled image button implementation shared by both menu controls, so icon styling and click-guard behaviour do not need to be reimplemented per control.
  • When EnableIndicator is true, switch the rendered CSS class and publish a DisableFormControls attribute so client script can disable the form during the AJAX round-trip (BR-MENU-073).
  • Register the shared ImageButton.js script once per page, and only when at least one button on the page has its indicator enabled (BR-MENU-074).

Context

  • Namespace: SAIF.Presentation.Web.Controls.V2.Menu
  • Assembly/package: SAIF.Presentation.Web.Controls.V2.Menu (shipped merged into SAIF.Presentation.Web.Infragistics111.dll via ILMerge)

Public members

Member Signature Purpose
DisableFormControlsOnClick Public Property DisableFormControlsOnClick As Boolean Whether clicking this button should disable other form controls while the postback/AJAX action is in flight.
EnableIndicator Public Property EnableIndicator As Boolean Whether this button shows the AJAX activity indicator and publishes the DisableFormControls client attribute on click.

Behavioral notes

  • Activity indicators and form-disabling behaviour apply uniformly to all toolbar icons on a page together, rather than being independently toggled per icon at render time (BR-MENU-064).
  • When EnableIndicator is false, a client-side one-click guard script still prevents duplicate submits from a fast double-click (BR-MENU-065).

Constraints and usage notes

  • SAIFImageButton instances are expected to be created and configured by SAIFMenu/SAIFMenuTop during control-tree construction rather than declared directly in markup by consuming pages.*

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.V2.Menu/SAIFImageButton.vb