ContentView

A full screen: compose its tree into ContentHost.Content in the constructor.
public abstract class ContentView : ContentHost

Constructors

protected ContentView()

Properties

BackButtonStyle

How the next pushed page's back button represents this page.

Type: BackButtonStyle

public BackButtonStyle BackButtonStyle { get; set; }

BackButtonTitle

The back button title the next pushed page shows, or null for this page's title.

Type: Bindable<string?>

public Bindable<string?> BackButtonTitle { get; set; }

BarTint

The tint for this page's bar buttons and back button, or null for the app tint.

Type: Bindable<Color?>

public Bindable<Color?> BarTint { get; set; }

BottomToolbarItems

Buttons along the screen's bottom edge.

The toolbar stays hidden while a tab bar occupies the bottom edge. A pushed page can set HidesTabBar to show its bottom toolbar in place of the tab bar.

Type: IList<ToolbarItem>

public IList<ToolbarItem> BottomToolbarItems { get; }

ConfirmLeave

Asked before the page is left, so unsaved changes can veto leaving.

Fires for the back button, a sheet swipe or a popover tap-out; return false to stay.

Leave it null while nothing needs guarding, which also disables the interactive pop-back swipe.

Type: Func<Task<bool>>?

public Func<Task<bool>>? ConfirmLeave { get; set; }

Controller

The native controller hosting this page, or null before it is presented.

Type: UIViewController?

public UIViewController? Controller { get; }

HidesNavigationBar

Hides the navigation bar for this page.

Type: bool

public bool HidesNavigationBar { get; set; }

HidesSearchBarWhenScrolling

Whether the search bar collapses into the bar as the content scrolls.

Type: bool

public bool HidesSearchBarWhenScrolling { get; set; }

HidesSearchScopesWhenEmpty

Whether search scopes stay hidden until the search field contains text.

Type: bool

public bool HidesSearchScopesWhenEmpty { get; set; }

HidesTabBar

Hides the tab bar while this page is on top of the stack.

Type: bool

public bool HidesTabBar { get; set; }

LargeTitleColor

The expanded large title's color, or null for the system default.

Type: Bindable<Color?>

public Bindable<Color?> LargeTitleColor { get; set; }

A fixed, full-width view below the navigation title that shares the navigation bar's visual treatment.

Scrolling content passes beneath this view and UIKit includes its measured height in the top content inset. On iOS 27, setting an accessory disables navigation-bar minimization because UIKit does not expose a custom accessory slot that participates in that transition.

Type: View?

public View? NavigationAccessory { get; set; }

When the navigation bar minimizes as this page scrolls.

iOS 27 and later. The default keeps the bar expanded. Ignored while NavigationAccessory is set.

Type: NavigationBarMinimize

public NavigationBarMinimize NavigationBarMinimizeBehavior { get; set; }

When a minimized navigation bar returns to full size.

iOS 27 and later. NavigationBarMinimizeRestore.AtScrollEdge is honored with NavigationBarMinimize.OnScrollDown.

Type: NavigationBarMinimizeRestore

public NavigationBarMinimizeRestore NavigationBarMinimizeRestorationBehavior { get; set; }

Whether the safe area changes while the navigation bar minimizes.

iOS 27 and later.

Type: NavigationBarMinimizeSafeArea

public NavigationBarMinimizeSafeArea NavigationBarMinimizeSafeAreaAdjustment { get; set; }

How the navigation title is displayed, or null to inherit the app theme.

Type: TitleStyle?

public TitleStyle? NavigationTitleStyle { get; set; }

Prompt

The small line of text above the navigation title, or null for none.

Type: Bindable<string?>

public Bindable<string?> Prompt { get; set; }

SafeAreaEdges

Which edges the page's content keeps clear of the safe area.

The page itself always fills the controller, so its background extends beneath system UI.

Type: SafeAreaEdges

public SafeAreaEdges SafeAreaEdges { get; set; }

ScrollsUnderBars

Whether scrolling content passes under the navigation bar so the bar blurs over it.

Type: bool

public bool ScrollsUnderBars { get; set; }

SearchCanceled

Invoked when the user cancels out of the search field.

Type: Action?

public Action? SearchCanceled { get; set; }

SearchChanged

Invoked as the user types in the search field.

Type: Action<string>?

public Action<string>? SearchChanged { get; set; }

SearchCommand

Command invoked when the user submits the current search text.

Type: ICommand?

public ICommand? SearchCommand { get; set; }

SearchObscuresBackground

Whether the content dims behind an active search.

Type: bool

public bool SearchObscuresBackground { get; set; }

SearchPlaceholder

Placeholder for the navigation bar's search field.

Setting it shows the search bar.

Type: Bindable<string?>

public Bindable<string?> SearchPlaceholder { get; set; }

SearchScopeChanged

Invoked with the selected index when the user switches search scope.

Type: Action<int>?

public Action<int>? SearchScopeChanged { get; set; }

SearchScopeIndex

The selected search scope index.

Type: Bindable<int>

public Bindable<int> SearchScopeIndex { get; set; }

SearchScopes

Titles of the scope buttons under an active search field. Empty for none.

Type: BindableList<string>

public BindableList<string> SearchScopes { get; set; }

SearchText

The search field's text.

Type: Bindable<string>

public Bindable<string> SearchText { get; set; }

StatusBar

The status bar look for this page.

Type: Bindable<StatusBarStyle>

public Bindable<StatusBarStyle> StatusBar { get; set; }

TabBadge

The badge on this page's tab bar item, or null for none.

Applies before the tab is opened.

Type: Bindable<string?>

public Bindable<string?> TabBadge { get; set; }

TabBadgeColor

The badge's background color, or null for the system red.

Type: Bindable<Color?>

public Bindable<Color?> TabBadgeColor { get; set; }

TabReselectedCommand

Command invoked when this page's tab is tapped while already selected, replacing the default pop-to-root / scroll-to-top.

Type: ICommand?

public ICommand? TabReselectedCommand { get; set; }

TabReselectedCommandParameter

The parameter passed to TabReselectedCommand.

Type: object?

public object? TabReselectedCommandParameter { get; set; }

Title

The navigation bar title.

Type: Bindable<string?>

public Bindable<string?> Title { get; set; }

TitleColor

The navigation title's color, or null for the system default.

Type: Bindable<Color?>

public Bindable<Color?> TitleColor { get; set; }

ToolbarItems

Buttons in the navigation bar.

Type: IList<ToolbarItem>

public IList<ToolbarItem> ToolbarItems { get; }

TopScrollEdgeStyle

The treatment where scrolling content meets the page's top chrome, or null to inherit the app theme.

iOS 26 and later. The inherited default lets UIKit choose the appropriate treatment.

Type: ScrollEdgeStyle?

public ScrollEdgeStyle? TopScrollEdgeStyle { get; set; }

Methods

ArrangeOverride

Content arrangement. Panels override to place their children.

protected override Size ArrangeOverride(
  Size finalSize)
ParameterSummary
Size finalSizeThe final size available for the view's content.

Returns

  • Size: The arranged content size.

MeasureOverride

Content measurement. Panels recurse; controls delegate to the native SizeThatFits.

protected override Size MeasureOverride(
  Size availableSize)
ParameterSummary
Size availableSizeThe size available for the view's content.

Returns

  • Size: The desired content size.

OnAppeared

Raised after the page appears on screen.

protected virtual void OnAppeared()

OnAppearing

Raised before the page appears on screen.

protected virtual void OnAppearing()

OnDisappeared

Raised after the page leaves the screen.

protected virtual void OnDisappeared()

OnDisappearing

Raised before the page leaves the screen.

protected virtual void OnDisappearing()

OnLoaded

Raised once, the first time the page is realized.

protected virtual void OnLoaded()

OnUnloaded

Raised when the page's tree is torn down.

protected virtual void OnUnloaded()