Table of Contents

Class ScaffoldArea

Namespace
Nalu
Assembly
Nalu.Maui.Scaffold.dll

A destination group holding one or more ScaffoldRoots, each hosting an independent navigation stack. A plain area has no visible root switcher: with a single root it is a plain page host; with multiple roots, switching happens through navigation. ScaffoldTabBar derives from it to add a tab UI.

[ContentProperty("Roots")]
public class ScaffoldArea : Element, INotifyPropertyChanged, IElementController, IVisualTreeElement, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IElement
Inheritance
ScaffoldArea
Implements
Derived
Inherited Members
Extension Methods

Remarks

Areas carry no route identity of their own: absolute navigation is type-based and resolves the destination from the roots' PageType registrations.

Constructors

ScaffoldArea()

Initializes a new ScaffoldArea.

public ScaffoldArea()

Fields

CurrentRootProperty

Bindable property for CurrentRoot (read-only).

public static readonly BindableProperty CurrentRootProperty

Field Value

BindableProperty

IsSelectedProperty

Bindable property for IsSelected (read-only).

public static readonly BindableProperty IsSelectedProperty

Field Value

BindableProperty

TitleProperty

Bindable property for Title.

public static readonly BindableProperty TitleProperty

Field Value

BindableProperty

Properties

CurrentRoot

Gets the selected root (defaults to the first root). Read-only: selection changes only through the Nalu navigation engine (absolute navigation or tab/flyout interaction), so lifecycle events and leaving guards can never be bypassed. Observable via binding. Each root preserves its navigation stack while unselected.

public ScaffoldRoot? CurrentRoot { get; }

Property Value

ScaffoldRoot

IsSelected

Gets whether this area is the scaffold's CurrentArea. Read-only, updated by the navigation engine; observable via binding — the styling hook for flyout templates (highlight state).

public bool IsSelected { get; }

Property Value

bool

Roots

Gets the root destinations owned by this area.

public IList<ScaffoldRoot> Roots { get; }

Property Value

IList<ScaffoldRoot>

Title

Gets or sets the display title used by the default flyout template as the group header of a multi-root area. Icons live on the roots (Icon) — an area deliberately carries text-only metadata.

public string? Title { get; set; }

Property Value

string

Operators

implicit operator ScaffoldArea(ScaffoldRoot)

Wraps a standalone root into a single-root ScaffoldArea, enabling the terse form <nalu:ScaffoldRoot PageType="..." /> directly inside a Scaffold. Composition happens once at conversion time — the resulting structure is real and is never mutated afterwards.

public static implicit operator ScaffoldArea(ScaffoldRoot root)

Parameters

root ScaffoldRoot

The root to wrap.

Returns

ScaffoldArea