TopLevel Class

Base class for top-level widgets.

Definition

Namespace: Avalonia.Controls
Assembly: Avalonia.Controls (in Avalonia.Controls.dll) Version: 11.3.999
[TemplatePartAttribute("PART_TransparencyFallback", typeof(Border))]
public abstract class TopLevel : ContentControl, 
	IInputRoot, IInputElement, ILayoutRoot, IRenderRoot, ICloseable, 
	IStyleHost, ILogicalRoot, ILogical, ITextInputMethodRoot
Inheritance
Object    AvaloniaObject    Animatable    StyledElement    Visual    Layoutable    Interactive    InputElement    Control    TemplatedControl    ContentControl    TopLevel
Derived
Implements
ICloseable, IInputElement, IInputRoot, ITextInputMethodRoot, ILayoutRoot, ILogical, ILogicalRoot, IRenderRoot, IStyleHost

Remarks

This class acts as a base for top level widget. It handles scheduling layout, styling and rendering as well as tracking the widget's ClientSize.

Constructors

TopLevel(ITopLevelImpl) Initializes a new instance of the TopLevel class.
TopLevel(ITopLevelImpl, IAvaloniaDependencyResolver) Initializes a new instance of the TopLevel class.

Properties

ActualThemeVariant
(Inherited from StyledElement)
ActualTransparencyLevel Gets the achieved WindowTransparencyLevel that the platform was able to provide.
Background Gets or sets the brush used to draw the control's background.
(Inherited from TemplatedControl)
BackgroundSizing Gets or sets how the control's background is drawn relative to the control's border.
(Inherited from TemplatedControl)
BorderBrush Gets or sets the brush used to draw the control's border.
(Inherited from TemplatedControl)
BorderThickness Gets or sets the thickness of the control's border.
(Inherited from TemplatedControl)
Bounds
(Inherited from Visual)
BypassFlowDirectionPolicies
(Overrides Visual.BypassFlowDirectionPolicies)
Classes
(Inherited from StyledElement)
ClientSize Gets or sets the client size of the window.
Clip
(Inherited from Visual)
Clipboard Gets the platform's clipboard implementation
ClipToBounds
(Inherited from Visual)
Content Gets or sets the content to display.
(Inherited from ContentControl)
ContentTemplate Gets or sets the data template used to display the content of the control.
(Inherited from ContentControl)
ContextFlyout Gets or sets a context flyout to the control
(Inherited from Control)
ContextMenu Gets or sets a context menu to the control.
(Inherited from Control)
CornerRadius Gets or sets the radius of the border rounded corners.
(Inherited from TemplatedControl)
Cursor
(Inherited from InputElement)
DataContext
(Inherited from StyledElement)
DataTemplates Gets or sets the data templates for the control.
(Inherited from Control)
DesiredSize
(Inherited from Layoutable)
Effect
(Inherited from Visual)
FlowDirection
(Inherited from Visual)
Focusable
(Inherited from InputElement)
FocusAdorner Gets or sets the control's focus adorner.
(Inherited from Control)
FocusManager 
FontFamily Gets or sets the font family used to draw the control's text.
(Inherited from TemplatedControl)
FontFeatures Gets or sets the font features turned on/off.
(Inherited from TemplatedControl)
FontSize Gets or sets the size of the control's text in points.
(Inherited from TemplatedControl)
FontStretch Gets or sets the font stretch used to draw the control's text.
(Inherited from TemplatedControl)
FontStyle Gets or sets the font style used to draw the control's text.
(Inherited from TemplatedControl)
FontWeight Gets or sets the font weight used to draw the control's text.
(Inherited from TemplatedControl)
Foreground Gets or sets the brush used to draw the control's text and other foreground elements.
(Inherited from TemplatedControl)
FrameSize Gets or sets the total size of the window.
GestureRecognizers
(Inherited from InputElement)
HasMirrorTransform
(Inherited from Visual)
Height
(Inherited from Layoutable)
HorizontalAlignment
(Inherited from Layoutable)
HorizontalContentAlignment Gets or sets the horizontal alignment of the content within the control.
(Inherited from ContentControl)
InheritanceParent
(Inherited from AvaloniaObject)
InputPane 
InsetsManager 
IsArrangeValid
(Inherited from Layoutable)
IsEffectivelyEnabled
(Inherited from InputElement)
IsEffectivelyVisible
(Inherited from Visual)
IsEnabled
(Inherited from InputElement)
IsEnabledCore
(Inherited from InputElement)
IsFocused
(Inherited from InputElement)
IsHitTestVisible
(Inherited from InputElement)
IsInitialized
(Inherited from StyledElement)
IsKeyboardFocusWithin
(Inherited from InputElement)
IsLoaded Gets a value indicating whether the control is fully constructed in the visual tree and both layout and render are complete.
(Inherited from Control)
IsMeasureValid
(Inherited from Layoutable)
IsPointerOver
(Inherited from InputElement)
IsTabStop
(Inherited from InputElement)
IsVisible
(Inherited from Visual)
Item
(Inherited from AvaloniaObject)
Item
(Inherited from AvaloniaObject)
KeyBindings
(Inherited from InputElement)
Launcher 
LogicalChildren
(Inherited from StyledElement)
Margin
(Inherited from Layoutable)
MaxHeight
(Inherited from Layoutable)
MaxWidth
(Inherited from Layoutable)
MinHeight
(Inherited from Layoutable)
MinWidth
(Inherited from Layoutable)
Name
(Inherited from StyledElement)
Opacity
(Inherited from Visual)
OpacityMask
(Inherited from Visual)
Padding Gets or sets the padding placed between the border of the control and its content.
(Inherited from TemplatedControl)
Parent
(Inherited from StyledElement)
PlatformImpl Gets the platform-specific window implementation.
PlatformSettings 
Presenter Gets the presenter from the control's template.
(Inherited from ContentControl)
PseudoClasses
(Inherited from StyledElement)
RendererDiagnostics Gets a value indicating whether the renderer should draw specific diagnostics.
RenderScaling 
RenderTransform
(Inherited from Visual)
RenderTransformOrigin
(Inherited from Visual)
RequestedThemeVariant Gets or sets the UI theme variant that is used by the control (and its child elements) for resource determination. The UI theme you specify with ThemeVariant can override the app-level ThemeVariant.
Resources
(Inherited from StyledElement)
Screens Gets platform screens implementation.
StorageProvider File System storage service used for file pickers and bookmarks.
StyleKey
(Inherited from StyledElement)
StyleKeyOverride
(Inherited from StyledElement)
Styles
(Inherited from StyledElement)
TabIndex
(Inherited from InputElement)
Tag Gets or sets a user-defined object attached to the control.
(Inherited from Control)
Template Gets or sets the template that defines the control's appearance.
(Inherited from TemplatedControl)
TemplatedParent
(Inherited from StyledElement)
Theme
(Inherited from StyledElement)
Transitions
(Inherited from Animatable)
TransparencyBackgroundFallback Gets or sets the IBrush that transparency will blend with when transparency is not supported. By default this is a solid white brush.
TransparencyLevelHint Gets or sets the WindowTransparencyLevel that the TopLevel should use when possible. Accepts multiple values which are applied in a fallback order. For instance, with "Mica, Blur" Mica will be applied only on platforms where it is possible, and Blur will be used on the rest of them. Default value is an empty array or "None".
UseLayoutRounding
(Inherited from Layoutable)
VerticalAlignment
(Inherited from Layoutable)
VerticalContentAlignment Gets or sets the vertical alignment of the content within the control.
(Inherited from ContentControl)
VisualChildren
(Inherited from Visual)
VisualRoot
(Inherited from Visual)
Width
(Inherited from Layoutable)
ZIndex
(Inherited from Visual)

Methods

AddHandler(RoutedEvent, Delegate, RoutingStrategies, Boolean)
(Inherited from Interactive)
AddHandler``1(RoutedEventUMP, EventHandlerUMP, RoutingStrategies, Boolean)
(Inherited from Interactive)
ApplyStyling
(Inherited from StyledElement)
ApplyTemplate
(Inherited from TemplatedControl)
Arrange(Rect)
(Inherited from Layoutable)
ArrangeCore(Rect)
(Inherited from Layoutable)
ArrangeOverride(Size)
(Inherited from Layoutable)
BeginInit
(Inherited from StyledElement)
Bind(AvaloniaProperty, IBinding)
(Inherited from AvaloniaObject)
Bind(AvaloniaProperty, IObservableObject, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableUMP)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableBindingValueUMP)
(Inherited from AvaloniaObject)
Bind``1(DirectPropertyBaseUMP, IObservableObject)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableUMP, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableBindingValueUMP, BindingPriority)
(Inherited from AvaloniaObject)
Bind``1(StyledPropertyUMP, IObservableObject, BindingPriority)
(Inherited from AvaloniaObject)
BuildEventRoute(RoutedEvent)
(Inherited from Interactive)
CheckAccess
(Inherited from AvaloniaObject)
ClearValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
ClearValue``1(AvaloniaPropertyUMP)
(Inherited from AvaloniaObject)
ClearValue``1(DirectPropertyBaseUMP)
(Inherited from AvaloniaObject)
ClearValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
CoerceValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
EndInit
(Inherited from StyledElement)
Equals(Object)
(Inherited from AvaloniaObject)
FinalizeAllows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection.
(Inherited from Object)
Focus(NavigationMethod, KeyModifiers)
(Inherited from InputElement)
GetAutoSafeAreaPadding(Control) Gets if auto safe area padding is enabled.
GetBaseValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
GetHashCode
(Inherited from AvaloniaObject)
GetSystemBarColor(Control) Helper for getting the color of the platform's system bars.
GetTemplateFocusTarget Gets the element that receives the focus adorner.
(Inherited from TemplatedControl)
GetTopLevel(Visual) Gets the TopLevel for which the given Visual is hosted in.
GetTypeGets the Type of the current instance.
(Inherited from Object)
GetValue(AvaloniaProperty)
(Inherited from AvaloniaObject)
GetValue``1(DirectPropertyBaseUMP)
(Inherited from AvaloniaObject)
GetValue``1(StyledPropertyUMP)
(Inherited from AvaloniaObject)
InitializeIfNeeded
(Inherited from StyledElement)
InvalidateArrange
(Inherited from Layoutable)
InvalidateMeasure
(Inherited from Layoutable)
InvalidateMirrorTransform
(Overrides Visual.InvalidateMirrorTransform)
InvalidateVisual
(Inherited from Visual)
IsAnimating(AvaloniaProperty)
(Inherited from AvaloniaObject)
IsSet(AvaloniaProperty)
(Inherited from AvaloniaObject)
LogicalChildrenCollectionChanged(Object, NotifyCollectionChangedEventArgs)
(Inherited from Visual)
Measure(Size)
(Inherited from Layoutable)
MeasureCore(Size)
(Inherited from Layoutable)
MeasureOverride(Size)
(Inherited from Layoutable)
MemberwiseCloneCreates a shallow copy of the current Object.
(Inherited from Object)
OnAccessKey(RoutedEventArgs)
(Inherited from InputElement)
OnApplyTemplate(TemplateAppliedEventArgs)
(Overrides TemplatedControlOnApplyTemplate(TemplateAppliedEventArgs))
OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs)
(Inherited from TemplatedControl)
OnAttachedToVisualTree(VisualTreeAttachmentEventArgs)
(Overrides Visual.OnAttachedToVisualTree(VisualTreeAttachmentEventArgs))
OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs)
(Inherited from Control)
OnClosed(EventArgs) Raises the Closed event.
OnCreateAutomationPeer Returns a new, type-specific AutomationPeer implementation for the control.
(Inherited from Control)
OnDataContextBeginUpdate
(Inherited from StyledElement)
OnDataContextChanged(EventArgs)
(Inherited from StyledElement)
OnDataContextEndUpdate
(Inherited from StyledElement)
OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs)
(Inherited from TemplatedControl)
OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs)
(Inherited from Visual)
OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs)
(Inherited from Control)
OnGotFocus(GotFocusEventArgs)
(Inherited from Control)
OnInitialized
(Inherited from StyledElement)
OnKeyDown(KeyEventArgs)
(Inherited from InputElement)
OnKeyUp(KeyEventArgs)
(Inherited from Control)
OnLoaded(RoutedEventArgs) Invoked just before the Loaded event.
(Inherited from Control)
OnLostFocus(RoutedEventArgs)
(Inherited from Control)
OnMeasureInvalidated
(Inherited from Layoutable)
OnOpened(EventArgs) Raises the Opened event.
OnPointerCaptureLost(PointerCaptureLostEventArgs)
(Inherited from InputElement)
OnPointerEntered(PointerEventArgs)
(Inherited from InputElement)
OnPointerExited(PointerEventArgs)
(Inherited from InputElement)
OnPointerMoved(PointerEventArgs)
(Inherited from InputElement)
OnPointerPressed(PointerPressedEventArgs)
(Inherited from InputElement)
OnPointerReleased(PointerReleasedEventArgs)
(Inherited from Control)
OnPointerWheelChanged(PointerWheelEventArgs)
(Inherited from InputElement)
OnPropertyChanged(AvaloniaPropertyChangedEventArgs)
(Overrides ContentControlOnPropertyChanged(AvaloniaPropertyChangedEventArgs))
OnPropertyChangedCore(AvaloniaPropertyChangedEventArgs)
(Inherited from Animatable)
OnSizeChanged(SizeChangedEventArgs) Invoked just before the SizeChanged event.
(Inherited from Control)
OnTemplateChanged(AvaloniaPropertyChangedEventArgs) Called when the Template property changes.
(Inherited from TemplatedControl)
OnTextInput(TextInputEventArgs)
(Inherited from InputElement)
OnUnloaded(RoutedEventArgs) Invoked just before the Unloaded event.
(Inherited from Control)
OnVisualParentChanged(Visual, Visual)
(Inherited from Layoutable)
RaiseEvent(RoutedEventArgs)
(Inherited from Interactive)
RaisePropertyChanged``1(DirectPropertyBaseUMP, UMP, UMP)
(Inherited from AvaloniaObject)
RegisterContentPresenter(ContentPresenter) Called when an ContentPresenter is registered with the control.
(Inherited from ContentControl)
RemoveHandler(RoutedEvent, Delegate)
(Inherited from Interactive)
RemoveHandler``1(RoutedEventUMP, EventHandlerUMP)
(Inherited from Interactive)
Render(DrawingContext)
(Inherited from Visual)
RequestAnimationFrame(ActionTimeSpan) Enqueues a callback to be called on the next animation tick
RequestPlatformInhibition(PlatformInhibitionType, String) Requests a PlatformInhibitionType to be inhibited. The behavior remains inhibited until the return value is disposed. The available set of PlatformInhibitionTypes depends on the platform. If a behavior is inhibited on a platform where this type is not supported the request will have no effect.
SetAndRaise``1(DirectPropertyBaseUMP, UMP, UMP)
(Inherited from AvaloniaObject)
SetAutoSafeAreaPadding(Control, Boolean) Enabled or disables whenever TopLevel should automatically adjust paddings depending on the safe area.
SetCurrentValue(AvaloniaProperty, Object)
(Inherited from AvaloniaObject)
SetCurrentValue``1(StyledPropertyUMP, UMP)
(Inherited from AvaloniaObject)
SetSystemBarColor(Control, SolidColorBrush) Helper for setting the color of the platform's system bars.
SetValue(AvaloniaProperty, Object, BindingPriority)
(Inherited from AvaloniaObject)
SetValue``1(DirectPropertyBaseUMP, UMP)
(Inherited from AvaloniaObject)
SetValue``1(StyledPropertyUMP, UMP, BindingPriority)
(Inherited from AvaloniaObject)
StartRendering 
StopRendering 
ToStringReturns a string that represents the current object.
(Inherited from Object)
TryGetPlatformHandle Trys to get the platform handle for the TopLevel-derived control.
TryGetResource(Object, ThemeVariant, Object)
(Inherited from StyledElement)
UpdateDataValidation(AvaloniaProperty, BindingValueType, Exception)
(Inherited from AvaloniaObject)
UpdateIsEffectivelyEnabled
(Inherited from InputElement)
UpdateLayout
(Inherited from Layoutable)
VerifyAccess
(Inherited from AvaloniaObject)

Events

ActualThemeVariantChanged
(Inherited from StyledElement)
AttachedToLogicalTree
(Inherited from StyledElement)
AttachedToVisualTree
(Inherited from Visual)
BackRequested Occurs when physical Back Button is pressed or a back navigation has been requested.
Closed Fired when the window is closed.
ContextRequested Occurs when the user has completed a context input gesture, such as a right-click.
(Inherited from Control)
DataContextChanged
(Inherited from StyledElement)
DetachedFromLogicalTree
(Inherited from StyledElement)
DetachedFromVisualTree
(Inherited from Visual)
DoubleTapped
(Inherited from InputElement)
EffectiveViewportChanged
(Inherited from Layoutable)
GotFocus
(Inherited from InputElement)
Holding
(Inherited from InputElement)
Initialized
(Inherited from StyledElement)
KeyDown
(Inherited from InputElement)
KeyUp
(Inherited from InputElement)
LayoutUpdated
(Inherited from Layoutable)
Loaded Occurs when the control has been fully constructed in the visual tree and both layout and render are complete.
(Inherited from Control)
LostFocus
(Inherited from InputElement)
Opened Fired when the window is opened.
PointerCaptureLost
(Inherited from InputElement)
PointerEntered
(Inherited from InputElement)
PointerExited
(Inherited from InputElement)
PointerMoved
(Inherited from InputElement)
PointerPressed
(Inherited from InputElement)
PointerReleased
(Inherited from InputElement)
PointerWheelChanged
(Inherited from InputElement)
PropertyChanged
(Inherited from AvaloniaObject)
ResourcesChanged
(Inherited from StyledElement)
ScalingChanged Gets or sets a method called when the TopLevel's scaling changes.
SizeChanged Occurs when the bounds (actual size) of the control have changed.
(Inherited from Control)
Tapped
(Inherited from InputElement)
TemplateApplied Raised when the control's template is applied.
(Inherited from TemplatedControl)
TextInput
(Inherited from InputElement)
TextInputMethodClientRequested
(Inherited from InputElement)
Unloaded Occurs when the control is removed from the visual tree.
(Inherited from Control)

Fields

ActualThemeVariantProperty 
ActualTransparencyLevelProperty Defines the ActualTransparencyLevel property.
AutoSafeAreaPaddingProperty Defines the AutoSafeAreaPadding attached property.
BackRequestedEvent Defines the BackRequested event.
ClientSizeProperty Defines the ClientSize property.
FrameSizeProperty Defines the FrameSize property.
PointerOverElementProperty Defines the PointerOverElement property.
RequestedThemeVariantProperty 
SystemBarColorProperty Defines the SystemBarColor attached property.
TransparencyBackgroundFallbackProperty Defines the TransparencyBackgroundFallback property.
TransparencyLevelHintProperty Defines the TransparencyLevelHint property.

Extension Methods

BringIntoView Tries to bring the control into view.
(Defined by ControlExtensions)
BringIntoView(Rect) Tries to bring the control into view.
(Defined by ControlExtensions)
FindControlT(String) Finds the named control in the scope of the specified control.
(Defined by ControlExtensions)
FindDataTemplate(Object, IDataTemplate) Find a data template that matches a piece of data.
(Defined by DataTemplateExtensions)
GetControlT(String) Finds the named control in the scope of the specified control and throws if not found.
(Defined by ControlExtensions)
GetTemplateChildren
(Defined by TemplateExtensions)

See Also