Skip to main content
Version: 2025

SalWindowsMenu

Namespace: PPJ.Runtime.Windows

Assembly: PPJ.Web.50 (5.0.0.0)

A SAL MDI window-list menu with a generated initialization hook.

public class SalWindowsMenu : MenuItem, ISalMenu

Example:

var windows = new SalWindowsMenu { Text = "Window" };
mainMenu.MenuItems.Add(windows);

Constructors

Instance member SalWindowsMenu()

Enables MDI window-list behavior and invokes OnInitializeMenu.

Properties

Instance member Owner

Control: Gets the control identified as this menu's SAL owner.

Instance member StatusText

String: Gets or sets the retained status-text value.

This property stores the value without installing a selection handler.

Methods

Instance member CloneMenu()

Attempts to clone the inherited menu and copy enabled-state callbacks.

Returns: MenuItem. The cloned item if the inherited result can be cast to SalPopupMenu.

This implementation casts the clone to SalPopupMenu even though this class derives directly from MenuItem; an incompatible clone throws InvalidCastException.

Protected member Dispose(disposing)

Clears SAL callback references before disposing the inherited menu item.

ParameterTypeDescription
disposingBooleanWhether managed resources are being disposed.

Instance member MergeMenu()

Creates and registers a merged menu without running its constructor or initialization hook.

Returns: MenuItem. The merged menu with the EnabledWhen subscriptions copied.

Protected member OnInitializeMenu()

Provides the initialization hook overridden by generated named-menu classes.

The base implementation does nothing. Called from construction.

Protected member OnPopup(e)

Refreshes child menu states within the menu's SAL and SQL contexts, then raises the inherited event.

ParameterTypeDescription
eEventArgsThe popup event data.

Events

Instance member EnabledWhen

SalMenuEnabledWhenHandler Evaluates whether the menu should be enabled when its SAL state is refreshed.

Implements

NameDescription
ISalMenuExposes menu refresh, status text, and the owning control for SAL menus.