Overview

Namespace: TheTechIdea.Beep.Winform.Controls.Design.Server.Designers
Inheritance: DesignerActionList | Visibility: public sealed

BeepMenuBarActionList provides the connected smart-tag for BeepMenuBar. It directly couples to BeepMenuBarDesigner and uses its transaction-wrapped mutation methods (ExecuteAction, SetPropertyWithTransaction) for all state changes. With 5 properties and 8 action methods across 4 organized sections, it provides a compact but complete design-time configuration surface.

Smart-Tag Properties (5)

PropertyTypeCategoryRead-OnlyDescription
ItemCountintItemsYesNumber of top-level menu items currently registered
ControlStyleBeepControlStyleStyleNoVisual style of menu items. Delegates to designer's GetProperty/SetPropertyWithTransaction.
HeightintLayoutNoMenu bar height in pixels. Delegates to designer.
TextFontFont?AppearanceNoFont for menu item text. Delegates to designer.
ShowImageboolAppearanceNoToggle per-item image/icon column visibility

Action Methods (8)

MethodCategoryDescription
LoadSampleMenuItems()ItemsPopulates the menu bar with a representative sample tree: File > New/Open/Save/Exit, Edit > Undo/Redo/Cut/Copy/Paste, Help > About
ClearAllItems()ItemsRemoves every top-level item
SetMaterialStyle()StyleControlStyle = Material3
SetFluentStyle()StyleControlStyle = Fluent2
SetOfficeStyle()StyleControlStyle = Office
SetStandardHeight()LayoutHeight = 44 px
SetCompactHeight()LayoutHeight = 32 px
SetComfortableHeight()LayoutHeight = 56 px

Smart-Tag Sections (4 Sections, 16 Items)

SectionItems
ItemsLoadSampleMenuItems (action), ClearAllItems (action), ItemCount (read-only property)
StyleSetMaterialStyle (action), SetFluentStyle (action), SetOfficeStyle (action), ControlStyle (property)
LayoutSetStandardHeight (action), SetCompactHeight (action), SetComfortableHeight (action), Height (property)
AppearanceTextFont (property), ShowImage (property)

Examples

// At design time, use smart-tag:
// Smart-tag > Items > "Load Sample Items"
// Smart-tag > Style > "Set Material 3 Style"
// Smart-tag > Layout > "Standard (44 px)"
// Smart-tag > Appearance > ShowImage = true

// The action list calls through BeepMenuBarDesigner:
// _designer.ExecuteAction("Load menu items", mb => { ... });
// _designer.SetPropertyWithTransaction("ControlStyle", Material3, "Set style");