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.