Skip to content

SAIF.Presentation.Web.Controls.V2.Menu overview

Documentation context: Packaged Component (NuGet)

SAIF.Presentation.Web.Controls.V2.Menu is a VB.NET ASP.NET Web Forms control library that renders the Business Online navigation menu and page toolbar. It contains three server controls — SAIFMenu (the left-hand favourites/applications accordion with a context search box), SAIFMenuTop (the top page-link row plus the action toolbar), and SAIFImageButton (the styled image button shared by both) — all driven by the signed-in user's authorised menu items.

Purpose

  • Render a per-user navigation surface (left menu accordion, top link row, and action toolbar) whose content is entirely determined by the signed-in user's authorised menu items, obtained from NavigationContext and cached in Session("navdata") for the life of the session.
  • Persist the user's "show applications pane" layout choice (SHOWAPPS) through SAIF.Presentation.clsPreferences, and gate per-page toolbar actions (insert, save, delete, print, download, save preferences, help) on capability flags carried by the current authorised page.
  • Raise navigation and toolbar-action events (MenuNavigate, ToolbarClick, DefaultOnSubmit) for the hosting page to act on — the controls perform no navigation or business action themselves, except redirecting directly to the change-password page for external clients.

Responsibilities

  • Build and render the left navigation menu, its context search box, favourites list, and collapsible applications accordion (SAIFMenu).
  • Build and render the top page-link row and the action toolbar, including per-button visibility, tooltips, access keys, and activity-indicator behaviour (SAIFMenuTop).
  • Provide a shared, AJAX-aware image button used by both controls for toolbar and menu icons (SAIFImageButton).
  • Acquire and session-cache the signed-in user's authorised menu items (NavigationContext), and read/write the SHOWAPPS layout preference (clsPreferences).

Key components

  • SAIFMenu: left-hand favourites/applications accordion menu with a context search box.
  • SAIFMenuTop: top page-link row and action toolbar, including the clsMenuButton state model and ToolBarButton action enum.
  • SAIFImageButton: shared styled image button with AJAX activity-indicator and form-disable behaviour.

Sources

  • SAIF.Presentation.Web.Controls.V2.Menu/SAIF.Presentation.Web.Controls.V2.Menu.vbproj
  • SAIF.Presentation.Web.Controls.V2.Menu/SAIFMenu.vb
  • SAIF.Presentation.Web.Controls.V2.Menu/SAIFMenuTop.vb
  • SAIF.Presentation.Web.Controls.V2.Menu/SAIFImageButton.vb