---
title: AppViewMasterPageBase
summary: API reference for AppViewMasterPageBase.
status: draft
owner: SAIF Documentation Team
last_reviewed: 2026-08-17
library: SAIF.Presentation.Web.Core.Infragistics103
reference_type: package
---

# AppViewMasterPageBase

`AppViewMasterPageBase` is the shared master-page base class for consuming SAIF applications: it exposes read-only accessors for the standard header/menu/banner controls expected on every master page (script manager, banner, SAIF menu, error label, claim/policy headers, update panel) and drives client-side focus behavior via the `FocusControl` property and its nested `NavigationManager` helper. Consuming applications' own master pages derive from this class rather than directly from `System.Web.UI.MasterPage`.

## Purpose
- Provide a single, consistent set of named accessors (`SAIFMenu`, `BannerControl`, `ErrorLabel`, `ClaimHeader`, `PolicyHeader`, etc.) for the standard controls expected to exist on a consuming application's master page markup.
- Own the "focus the given control on page render" behavior for any page using this master page, via `FocusControl` and `RegisterFocusControlScript`.
- Provide an alternate, session-persisted focus mechanism (`NavigationManager`) for use cases where focus must survive across postbacks via `Session("focuscontrol")`.

## Context
- Namespace: `SAIF.Presentation.Web.Core`
- Assembly/package: `SAIF.Presentation.Web.Core.Infragistics103` (merged into `SAIF.BOF.Presentation.Web.Infragistics103` NuGet package)

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| ScriptManager | `ReadOnly Property ScriptManager As ScriptManager` | Exposes the master page's `ScriptManager` control instance to consuming pages. |
| BannerControl | `ReadOnly Property BannerControl As BannerControl` | Exposes the master page's banner control instance. |
| SAIFMenu | `ReadOnly Property SAIFMenu As SAIFMenu` | Exposes the master page's primary navigation menu control. |
| SAIFMenuTop | `ReadOnly Property SAIFMenuTop As SAIFMenuTop` | Exposes the master page's top navigation menu control. |
| ErrorLabel | `ReadOnly Property ErrorLabel As Label` | Exposes the label control used to display page-level error messages. |
| SAIFMessage | `ReadOnly Property SAIFMessage As SAIFMessage` | Exposes the master page's message-display control. |
| ClaimHeader | `ReadOnly Property ClaimHeader As ClaimHeader` | Exposes the master page's claim-context header control. |
| LegacyPolicyHeader | `<Obsolete> ReadOnly Property LegacyPolicyHeader As Legacy.PolicyHeader` | Exposes the deprecated legacy policy-context header control; marked `Obsolete` in favor of `PolicyHeader`. |
| PolicyHeader | `ReadOnly Property PolicyHeader As PolicyHeader` | Exposes the current policy-context header control. |
| MainUpdatePanel | `ReadOnly Property MainUpdatePanel As UpdatePanel` | Exposes the master page's primary `UpdatePanel` for AJAX partial-page updates. |
| ContextBoxStyle | `Property ContextBoxStyle As SAIFMenu.ContextViewStyleEnum` | Gets or sets the visual style applied to the context box within the SAIF menu (defaults to `Normal`). |
| FocusControl | `Property FocusControl As Control` | Identifies the control that should receive client-side focus when the page renders; setting this drives `RegisterFocusControlScript`. |
| SAIFPID | `Property SAIFPID As String` | Carries a page/application identifier string used by consuming pages for context tracking. |

## Behavioral notes
- On `Page_PreRender`, if `FocusControl` is set, a JavaScript focus/select snippet tailored to the control's runtime type (Infragistics text edit, combo, date chooser, button, or generic) is registered via `ScriptManager.RegisterStartupScript`, wrapped in a 100ms `setTimeout` and a client-side `try/catch`.
- The nested `NavigationManager` class provides an older/parallel, session-persisted focus mechanism (`Session("focuscontrol")`) that classifies a bound control into an Infragistics control-type bucket and emits the corresponding Infragistics API focus call*.

## Constraints and usage notes
- Consuming master pages are expected to declare markup controls whose IDs bind to the protected backing fields (`_ScriptManager`, `_BannerControl`, `_SAIFMenu`, etc.); these fields are not populated by this base class itself.
- `LegacyPolicyHeader` is marked `<Obsolete>` — consuming code should use `PolicyHeader` instead.

> **Note:** Statements marked with * were inferred from code structure, naming conventions, or
> contextual evidence where direct confirmation was not available in source artifacts. Statements
> marked with ** could not be confirmed; treat as unknown until verified.

## Sources
- SAIF.Presentation.Web.Core.Infragistics103\AppViewMasterPageBase.vb
