AbsoluteLayout Class

Definition

Positions child elements at absolute positions.

public ref class AbsoluteLayout : Microsoft::Maui::Controls::Layout, Microsoft::Maui::IAbsoluteLayout, System::Collections::Generic::ICollection<Microsoft::Maui::IView ^>, System::Collections::Generic::IEnumerable<Microsoft::Maui::IView ^>, System::Collections::Generic::IList<Microsoft::Maui::IView ^>
public class AbsoluteLayout : Microsoft.Maui.Controls.Layout, Microsoft.Maui.IAbsoluteLayout, System.Collections.Generic.ICollection<Microsoft.Maui.IView>, System.Collections.Generic.IEnumerable<Microsoft.Maui.IView>, System.Collections.Generic.IList<Microsoft.Maui.IView>
type AbsoluteLayout = class
    inherit Layout
    interface IAbsoluteLayout
    interface ILayout
    interface IView
    interface IElement
    interface ITransform
    interface IContainer
    interface IList<IView>
    interface ICollection<IView>
    interface seq<IView>
    interface IEnumerable
    interface ISafeAreaView
    interface IPadding
type AbsoluteLayout = class
    inherit Layout
    interface IAbsoluteLayout
    interface ILayout
    interface IView
    interface IElement
    interface ITransform
    interface IContainer
    interface IList<IView>
    interface ICollection<IView>
    interface seq<IView>
    interface IEnumerable
    interface ISafeAreaView
    interface IPadding
    interface ICrossPlatformLayout
Public Class AbsoluteLayout
Inherits Layout
Implements IAbsoluteLayout, ICollection(Of IView), IEnumerable(Of IView), IList(Of IView)
Inheritance
Implements

Remarks

Application developers can control the placement of child elements by providing proportional coordinates, device coordinates, or a combination of both, depending on the AbsoluteLayoutFlags values that are passed to SetLayoutFlags(BindableObject, AbsoluteLayoutFlags) method. When one of the proportional AbsoluteLayoutFlags enumeration values is provided, the corresponding X, or Y arguments that range between 0.0 and 1.0 will always cause the child to be displayed completely on screen. That is, you do not need to subtract or add the height or width of a child in order to display it flush with the left, right, top, or bottom of the AbsoluteLayout. For width, height, X, or Y values that are not specified proportionally, application developers use device-dependent units to locate and size the child element.

The following example shows how to use an AbsoluteLayout with proportional position arguments.


Label header = new Label
{
    Text = "AbsoluteLayout Demo",
    FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label)),
    HorizontalOptions = LayoutOptions.Center
};

AbsoluteLayout simpleLayout = new AbsoluteLayout
{
    BackgroundColor = Color.Blue.WithLuminosity(0.9),
    VerticalOptions = LayoutOptions.FillAndExpand
};

topLeftLabel = new Label
{
    Text = "Top Left",
    TextColor = Color.Black
};

centerLabel = new Label
{
    Text = "Centered",
    TextColor = Color.Black
};

bottomRightLabel = new Label
{
    Text = "Bottom Right",
    TextColor = Color.Black
};

// PositionProportional flag maps the range (0.0, 1.0) to
// the range "flush [left|top]" to "flush [right|bottom]"
AbsoluteLayout.SetLayoutFlags(bottomRightLabel,
    AbsoluteLayoutFlags.PositionProportional);

AbsoluteLayout.SetLayoutBounds(topLeftLabel,
    new Rectangle(0f,
        0f, AbsoluteLayout.AutoSize, AbsoluteLayout.AutoSize));

AbsoluteLayout.SetLayoutFlags(centerLabel,
    AbsoluteLayoutFlags.PositionProportional);

AbsoluteLayout.SetLayoutBounds(centerLabel,
    new Rectangle(0.5,
        0.5, AbsoluteLayout.AutoSize, AbsoluteLayout.AutoSize));

AbsoluteLayout.SetLayoutFlags(bottomRightLabel,
    AbsoluteLayoutFlags.PositionProportional);

AbsoluteLayout.SetLayoutBounds(bottomRightLabel,
    new Rectangle(1f,
        1f, AbsoluteLayout.AutoSize, AbsoluteLayout.AutoSize));

simpleLayout.Children.Add(topLeftLabel);
simpleLayout.Children.Add(centerLabel);
simpleLayout.Children.Add(bottomRightLabel);

The code sample below shows how to place two labels by specifying device-dependent units.


AbsoluteLayout simpleLayout = new AbsoluteLayout
{

    BackgroundColor = Color.Blue.WithLuminosity(0.9),
    VerticalOptions = LayoutOptions.FillAndExpand
};

Label header = new Label
{
    Text = "Device Units Demo",
    TextColor = Color.Black,
    FontSize = Device.GetNamedSize(NamedSize.Large, typeof(Label))
};

topLeftText = new Label
{
    Text = "Left",
    TextColor = Color.Black
};

AbsoluteLayout.SetLayoutFlags(topLeftText,
    AbsoluteLayoutFlags.None);

AbsoluteLayout.SetLayoutBounds(topLeftText,
    new Rectangle(0f, 0f, 100f, 50f));

middleText = new Label
{
    Text = "Device-dependent location",
    TextColor = Color.Black
};

AbsoluteLayout.SetLayoutFlags(middleText,
    AbsoluteLayoutFlags.None);

AbsoluteLayout.SetLayoutBounds(middleText,
    new Rectangle(100f, 200f, 200f, 50f));

simpleLayout.Children.Add(topLeftText);
simpleLayout.Children.Add(middleText);

}

XAML for Microsoft.Maui.Controls supports the following attached properties for the AbsoluteLayout class:

Attached PropertyValue
AbsoluteLayout.LayoutBounds

A comma-separated list—possibly with spaces—of four values that specify the bounding rectangle's position and dimensions. The first two values in the list must represent numbers. The latter two values may each either be numbers, or the string "AutoSize". The AbsoluteLayout.LayoutFlags attached property determines how the values in the list are interpreted to create the bounding rectangle.

AbsoluteLayout.LayoutFlags

AbsoluteLayoutFlags enumeration value names: All, None, HeightProportional, WidthProportional, SizeProportional, XProportional, YProportional, or PositionProportional. Application developers can combine any of these flags together by supplying a comma-separated list.

Application developers can use XAML to lay out elements with the AbsoluteLayout class. The example below places a blue BoxView inside an AbsoluteLayout:

<AbsoluteLayout VerticalOptions="FillAndExpand"
                    HorizontalOptions="FillAndExpand">
<BoxView    AbsoluteLayout.LayoutBounds="0.25, 0.25, 0.5, 0.5"
                    Color="Blue"
                    AbsoluteLayout.LayoutFlags="All" />
</AbsoluteLayout>

The AbsoluteLayout class can lay its child elements out in proportional units, device units, or a combination of both. Application developers should remember the following points when specifying a Rectangle structure that will define the layout bounds of a child element:

  • For elements whose height and width fit on the screen, proportional position dimensions in the range [0,1] represent elements that are completely on the screen, regardless of whether the height, width, or both are specified in device or proportional units.:
  • The above point means that, to specify an element in the lower right hand corner of the screen and that is half as wide and half as all as the screen, with a AbsoluteLayoutFlags value of All, the application developer would specify "1.0, 1.0, 0.5, 0.5".:
  • The app developer can inadvertently cause child elements for which one or both size dimensions were specified proportionally to be displayed partially off the screen, or hidden altogether, by specifying device-unit positions that do not leave enough room for the calculated size of the child.:
  • Each part of the bounding Rectangle structure is interpreted according to the AbsoluteLayoutFlags value that controls it. A given rectangle might, for example, have an X-coordinate that is in device units, a Y-coordinate that is in proportional units, a height that is in proportional units, and a width that is in device units, or any other combination of device and proportional units. :
  • Rectangles that, when interpreted by using the current AbsoluteLayoutFlags set on the child, represent bounding boxes that are partially or wholly off-screen—for example, by having a width that is larger than the screen width—may give unexpected results.:

Constructors

AbsoluteLayout()

Fields

_layoutManager (Inherited from Layout)
AutoSize

A value that indicates that the width or height of the child should be sized to that child's native size.

LayoutBoundsProperty

Bindable property for attached property LayoutBounds.

LayoutFlagsProperty

Bindable property for attached property LayoutFlags.

propertyMapper

Represents the view's internal PropertyMapper.

(Inherited from View)

Properties

AnchorX

Gets or sets the X component of the center point for any transform operation, relative to the bounds of the element. This is a bindable property.

(Inherited from VisualElement)
AnchorY

Gets or sets the Y component of the center point for any transform operation, relative to the bounds of the element. This is a bindable property.

(Inherited from VisualElement)
AutomationId

Gets or sets a value that allows the automation framework to find and interact with this element.

(Inherited from Element)
Background

Gets or sets the Brush which will be used to fill the background of an element. This is a bindable property.

(Inherited from VisualElement)
BackgroundColor

Gets or sets the Color which will fill the background of an element. This is a bindable property.

(Inherited from VisualElement)
Batched

Gets a value that indicates there are batched changes done for this element.

(Inherited from VisualElement)
Behaviors

Gets the list of Behavior objects associated to this element. This is a read-only bindable property.

(Inherited from VisualElement)
BindingContext

Gets or sets an object that contains the properties that will be targeted by the bound properties that belong to this BindableObject. This is a bindable property.

(Inherited from BindableObject)
Bounds

Gets the bounds of the element in device-independent units.

(Inherited from VisualElement)
CascadeInputTransparent (Inherited from Layout)
Children

For internal use by the Microsoft.Maui.Controls platform.

(Inherited from Layout)
class (Inherited from NavigableElement)
ClassId

Gets or sets a value used to identify a collection of semantically similar elements.

(Inherited from Element)
Clip

Specifies the clipping region for an element. This is a bindable property.

(Inherited from VisualElement)
Count (Inherited from Layout)
DesiredSize

Gets the size that this element computed during the measure pass of the layout process.

(Inherited from VisualElement)
DisableLayout

Gets a value that indicates that layout for this element is disabled.

(Inherited from VisualElement)
Dispatcher

Gets the dispatcher that was available when this bindable object was created, otherwise tries to find the nearest available dispatcher (probably the window's/app's).

(Inherited from BindableObject)
EffectControlProvider

For internal use by .NET MAUI.

(Inherited from Element)
Effects

Gets or sets the styles and properties that will be applied to the element during runtime.

(Inherited from Element)
FlowDirection

Gets or sets the layout flow direction. This is a bindable property.

(Inherited from VisualElement)
Frame

Gets or sets the frame this element resides in on screen.

(Inherited from VisualElement)
GestureController (Inherited from View)
GestureRecognizers

The collection of gesture recognizers associated with this view.

(Inherited from View)
Handler

Gets or sets the IViewHandler associated to this element.

(Inherited from VisualElement)
Height

Gets the current rendered height of this element. This is a read-only bindable property.

(Inherited from VisualElement)
HeightRequest

Gets or sets the desired height override of this element. This is a bindable property.

(Inherited from VisualElement)
HorizontalOptions

Gets or sets the LayoutOptions that define how the element gets laid out in a layout cycle. This is a bindable property.

(Inherited from View)
Id

Gets a value that can be used to uniquely identify an element throughout the run of your application.

(Inherited from Element)
IgnoreSafeArea (Inherited from Layout)
InputTransparent

Gets or sets a value indicating whether this element responds to hit testing during user interaction. This is a bindable property.

(Inherited from VisualElement)
IsClippedToBounds

Gets or sets a value which determines if the Layout should clip its children to its bounds.

(Inherited from Layout)
IsEnabled

Gets or sets a value indicating whether this element is enabled in the user interface. This is a bindable property.

(Inherited from VisualElement)
IsEnabledCore

This value represents the cumulative IsEnabled value. All types that override this property need to also invoke the RefreshIsEnabledProperty() method if the value will change.

(Inherited from VisualElement)
IsFocused

Gets a value indicating whether this element is focused currently. This is a bindable property.

(Inherited from VisualElement)
IsInPlatformLayout

Gets or sets a value that indicates that this element is currently going through the platform layout cycle.

(Inherited from VisualElement)
IsLoaded

Indicates if an element is connected to the main object tree.

(Inherited from VisualElement)
IsPlatformEnabled

Gets or sets a value that indicates whether this elements's platform equivalent element is enabled.

(Inherited from VisualElement)
IsPlatformStateConsistent

Gets or sets a value that indicates that this element is currently consistent with the platform equivalent element state.

(Inherited from VisualElement)
IsReadOnly (Inherited from Layout)
IsVisible

Gets or sets a value that determines whether this element will be visible on screen and take up space in layouts. This is a bindable property.

(Inherited from VisualElement)
Item[Int32] (Inherited from Layout)
LogicalChildren
Obsolete.

For internal use by the Microsoft.Maui.Controls platform.

(Inherited from Element)
Margin

Gets or set the margin for the view.

(Inherited from View)
MaximumHeightRequest

Gets or sets the maximum height the element will request during layout. This is a bindable property.

(Inherited from VisualElement)
MaximumWidthRequest

Gets or sets the maximum width the element will request during layout. This is a bindable property.

(Inherited from VisualElement)
MinimumHeightRequest

Gets or sets the minimum height the element will request during layout. This is a bindable property.

(Inherited from VisualElement)
MinimumWidthRequest

Gets or sets the minimum width the element will request during layout. This is a bindable property.

(Inherited from VisualElement)
Navigation (Inherited from NavigableElement)
NavigationProxy (Inherited from NavigableElement)
Opacity

Gets or sets the opacity value applied to the element when it is rendered. The range of this value is 0 to 1; values outside this range will be set to the nearest valid value. This is a bindable property.

(Inherited from VisualElement)
Padding

Gets or sets the inner padding of the Layout.

(Inherited from Layout)
Parent

Gets or sets the parent Element of this element.

(Inherited from Element)
RealParent

For internal use by .NET MAUI.

(Inherited from Element)
Resources

Gets or sets the local resource dictionary.

(Inherited from VisualElement)
Rotation

Gets or sets the rotation (in degrees) about the Z-axis (affine rotation) when the element is rendered. This is a bindable property.

(Inherited from VisualElement)
RotationX

Gets or sets the rotation (in degrees) about the X-axis (perspective rotation) when the element is rendered. This is a bindable property.

(Inherited from VisualElement)
RotationY

Gets or sets the rotation (in degrees) about the Y-axis (perspective rotation) when the element is rendered. This is a bindable property.

(Inherited from VisualElement)
Scale

Gets or sets the scale factor applied to the element. This is a bindable property.

(Inherited from VisualElement)
ScaleX

Gets or sets a scale value to apply to the X direction. This is a bindable property.

(Inherited from VisualElement)
ScaleY

Gets or sets a scale value to apply to the Y direction. This is a bindable property.

(Inherited from VisualElement)
Shadow

Gets or sets the shadow effect cast by the element. This is a bindable property.

(Inherited from VisualElement)
Style (Inherited from NavigableElement)
StyleClass (Inherited from NavigableElement)
StyleId

Gets or sets a user defined value to uniquely identify the element.

(Inherited from Element)
TranslationX

Gets or sets the X translation delta of the element. This is a bindable property.

(Inherited from VisualElement)
TranslationY

Gets or sets the Y translation delta of the element. This is a bindable property.

(Inherited from VisualElement)
Triggers

Gets the list of TriggerBase objects associated to this element. This is a read-only bindable property.

(Inherited from VisualElement)
VerticalOptions

Gets or sets the LayoutOptions that define how the element gets laid out in a layout cycle. This is a bindable property.

(Inherited from View)
Visual

Gets or sets a IVisual implementation that overrides the visual appearance of an element. This is a bindable property.

(Inherited from VisualElement)
Width

Gets the current width of this element. This is a read-only bindable property.

(Inherited from VisualElement)
WidthRequest

Gets or sets the desired width override of this element. This is a bindable property.

(Inherited from VisualElement)
Window

Gets the Window that is associated with an element. This is a read-only bindable property.

(Inherited from VisualElement)
X

Gets the current X position of this element. This is a read-only bindable property.

(Inherited from VisualElement)
Y

Gets the current Y position of this element. This is a read-only bindable property.

(Inherited from VisualElement)
ZIndex

Gets or sets the front-to-back z-index of an element within a layout. This is a bindable property.

(Inherited from VisualElement)

Methods

Add(IView) (Inherited from Layout)
AddLogicalChild(Element)

Adds an Element to the logical children.

(Inherited from Element)
ApplyBindings()

Applies all the current bindings to BindingContext.

(Inherited from BindableObject)
Arrange(Rect)

Positions child objects and determines a size for an element.

(Inherited from VisualElement)
ArrangeOverride(Rect)

Allows subclasses to override Arrange(Rect) even though the interface has to be explicitly implemented to avoid conflict with the old Arrange(Rect) method.

(Inherited from VisualElement)
BatchBegin()

Signals the start of a batch of changes to the elements properties. This can benefit performance if a bigger number of property values are changed.

(Inherited from VisualElement)
BatchCommit()

Signals the end of a batch of commands to the element and that those commands should now be committed.

(Inherited from VisualElement)
ChangeVisualState() (Inherited from View)
Clear() (Inherited from Layout)
ClearLogicalChildren()

Removes all child Elements.

(Inherited from Element)
ClearValue(BindableProperty)

Clears any value that is previously set for a bindable property.

(Inherited from BindableObject)
ClearValue(BindablePropertyKey)

Clears any value that is previously set for a bindable property, identified by its key.

(Inherited from BindableObject)
CoerceValue(BindableProperty)

Coerces the value of the specified bindable property. This is done by invoking BindableProperty.CoerceValueDelegate of the specified bindable property.

(Inherited from BindableObject)
CoerceValue(BindablePropertyKey)

Coerces the value of the specified bindable property. This is done by invoking BindableProperty.CoerceValueDelegate of the specified bindable property.

(Inherited from BindableObject)
Contains(IView) (Inherited from Layout)
CopyTo(IView[], Int32) (Inherited from Layout)
CreateLayoutManager()
CrossPlatformArrange(Rect) (Inherited from Layout)
CrossPlatformMeasure(Double, Double) (Inherited from Layout)
EffectIsAttached(String)

For internal use by .NET MAUI.

(Inherited from Element)
FindByName(String)

Returns the element that has the specified name.

(Inherited from Element)
Focus()

Attempts to set focus to this element.

(Inherited from VisualElement)
GetChildElements(Point)

Gets the child elements that are visually beneath the specified point.

(Inherited from View)
GetEnumerator() (Inherited from Layout)
GetLayoutBounds(BindableObject)

Gets the layout bounds of bindable.

GetLayoutBounds(IView)
GetLayoutFlags(BindableObject)

Gets the layout flags that were specified when bindable was added to an AbsoluteLayout.

GetLayoutFlags(IView)
GetRendererOverrides<T>() (Inherited from View)
GetValue(BindableProperty)

Returns the value that is contained in the given bindable property.

(Inherited from BindableObject)
IndexOf(IView) (Inherited from Layout)
Insert(Int32, IView) (Inherited from Layout)
InsertLogicalChild(Int32, Element)

Inserts an Element to the logical children at the specified index.

(Inherited from Element)
InvalidateMeasure()

Marks the current measure of an element as invalidated.

(Inherited from VisualElement)
InvalidateMeasureNonVirtual(InvalidationTrigger)

Invalidates the measure of an element.

(Inherited from VisualElement)
InvalidateMeasureOverride() (Inherited from Layout)
IsSet(BindableProperty)

Determines whether or not a bindable property exists and has a value set.

(Inherited from BindableObject)
Layout(Rect)

Updates the bounds of the element during the layout cycle.

(Inherited from VisualElement)
Measure(Double, Double, MeasureFlags) (Inherited from Layout)
MeasureOverride(Double, Double)

Provides a way to allow subclasses to override Measure(Double, Double, MeasureFlags) even though the interface has to be explicitly implemented to avoid conflict with the old Measure method.

(Inherited from VisualElement)
OnAdd(Int32, IView)
OnBindingContextChanged()

Invoked whenever the binding context of the View changes.

(Inherited from View)
OnChildAdded(Element) (Inherited from VisualElement)
OnChildRemoved(Element, Int32) (Inherited from VisualElement)
OnChildrenReordered()

Raises the ChildrenReordered event.

(Inherited from VisualElement)
OnClear()
OnHandlerChanged()

When overridden in a derived class, should raise the HandlerChanged event.

(Inherited from Element)
OnHandlerChanging(HandlerChangingEventArgs)

When overridden in a derived class, should raise the HandlerChanging event.

(Inherited from Element)
OnInsert(Int32, IView)
OnMeasure(Double, Double)

Method that is called when a layout measurement happens.

(Inherited from VisualElement)
OnParentChanged()

When overridden in a derived class, should raise the ParentChanged event.

(Inherited from Element)
OnParentChanging(ParentChangingEventArgs)

When overridden in a derived class, should raise the ParentChanging event.

(Inherited from Element)
OnParentSet() (Inherited from NavigableElement)
OnPropertyChanged(String)

Method that is called when a bound property is changed.

(Inherited from Element)
OnPropertyChanging(String)

Raises the PropertyChanging event.

(Inherited from BindableObject)
OnRemove(Int32, IView)
OnSizeAllocated(Double, Double)

Method that is called when the size of the element is set during a layout cycle. Implement this method to add class handling for this event.

(Inherited from VisualElement)
OnUpdate(Int32, IView, IView)
PlatformSizeChanged()

Signals that the platform equivalent element for this element's size has changed and a new layout cycle might be needed.

(Inherited from VisualElement)
RefreshIsEnabledProperty()

This method must always be called if some event occurs and the value of the IsEnabledCore property will change.

(Inherited from VisualElement)
Remove(IView) (Inherited from Layout)
RemoveAt(Int32) (Inherited from Layout)
RemoveBinding(BindableProperty)

Removes a previously set binding from a bindable property.

(Inherited from BindableObject)
RemoveDynamicResource(BindableProperty)

Removes a previously set dynamic resource.

(Inherited from Element)
RemoveLogicalChild(Element)

Removes the first occurrence of a specific Element from the logical children.

(Inherited from Element)
SetBinding(BindableProperty, BindingBase)

Assigns a binding to a bindable property.

(Inherited from BindableObject)
SetDynamicResource(BindableProperty, String)

Sets the BindableProperty property of this element to be updated via the DynamicResource with the provided key.

(Inherited from Element)
SetLayoutBounds(BindableObject, Rect)

Sets the layout bounds of a view that will be used to size it when it is layed out.

SetLayoutBounds(IView, Rect)
SetLayoutFlags(BindableObject, AbsoluteLayoutFlags)

Sets the layout flags of a view that will be used to interpret the layout bounds set on it when it is added to the layout.

SetLayoutFlags(IView, AbsoluteLayoutFlags)
SetValue(BindableProperty, Object)

Sets the value of the specified bindable property.

(Inherited from BindableObject)
SetValue(BindablePropertyKey, Object)

Sets the value of the specified bindable property.

(Inherited from BindableObject)
SetValueCore(BindableProperty, Object, SetValueFlags)

For internal use by the Microsoft.Maui.Controls platform.

(Inherited from BindableObject)
SetValueFromRenderer(BindableProperty, Object)

For internal use by .NET MAUI.

(Inherited from Element)
SetValueFromRenderer(BindablePropertyKey, Object)

For internal use by .NET MAUI.

(Inherited from Element)
SizeAllocated(Double, Double)

Method that is called during a layout cycle to signal the start of a sub-tree layout.

(Inherited from VisualElement)
UnapplyBindings()

Removes all current bindings from the current context.

(Inherited from BindableObject)
Unfocus()

Unsets keyboard focus on this element.

(Inherited from VisualElement)

Events

BatchCommitted

Occurs when a batch of property changes have been committed by calling BatchCommit().

(Inherited from VisualElement)
BindingContextChanged

Occurs when the value of the BindingContext property changes.

(Inherited from BindableObject)
ChildAdded

Raised whenever a child element is added to the element.

(Inherited from Element)
ChildRemoved

Raised whenever a child element is removed from the element.

(Inherited from Element)
ChildrenReordered

Occurs when the order of this element's children changes.

(Inherited from VisualElement)
DescendantAdded

Raised whenever a child element is added to the element's subtree.

(Inherited from Element)
DescendantRemoved

Raised whenever a child element is removed from the elements subtree.

(Inherited from Element)
FocusChangeRequested
Obsolete.
(Inherited from VisualElement)
Focused

Occurs when this element is focused.

(Inherited from VisualElement)
HandlerChanged

Raised whenever the element's handler has changed.

(Inherited from Element)
HandlerChanging

Raised whenever the element's handler starts to change.

(Inherited from Element)
Loaded

Occurs when an element has been constructed and added to the object tree.

(Inherited from VisualElement)
MeasureInvalidated

Occurs when the current measure of an element has been invalidated.

(Inherited from VisualElement)
ParentChanged

Raised whenever the element's parent has changed.

(Inherited from Element)
ParentChanging

Raised whenever the element's starts to change.

(Inherited from Element)
PropertyChanged

Occurs when a property value changes.

(Inherited from BindableObject)
PropertyChanging

Occurs when a property value is changing.

(Inherited from BindableObject)
SizeChanged

Occurs when the size of an element changed.

(Inherited from VisualElement)
Unfocused

Occurs when this element is unfocused.

(Inherited from VisualElement)
Unloaded

Occurs when an element is no longer connected to the main object tree.

(Inherited from VisualElement)

Explicit Interface Implementations

IBindableLayout.Children (Inherited from Layout)
IContextFlyoutElement.ContextFlyout

Gets the ContextFlyout for the view. Menu flyouts, menu flyout subitems, and menu flyout separators can be added to the context flyout.

(Inherited from Element)
IDynamicResourceHandler.SetDynamicResource(BindableProperty, String) (Inherited from BindableObject)
IEffectControlProvider.RegisterEffect(Effect) (Inherited from Element)
IElement.Handler

Gets or sets the View Handler of the Element.

(Inherited from VisualElement)
IElement.Parent

Gets the Parent of the Element.

(Inherited from Element)
IElementController.Descendants()

For internal use by .NET MAUI.

(Inherited from Element)
IElementController.LogicalChildren

For internal use by .NET MAUI.

(Inherited from Element)
IElementController.SetValueFromRenderer(BindableProperty, Object)

For internal use by .NET MAUI.

(Inherited from Element)
IEnumerable.GetEnumerator() (Inherited from Layout)
IGestureController.CompositeGestureRecognizers (Inherited from View)
IHotReloadableView.Reload() (Inherited from View)
IHotReloadableView.ReloadHandler (Inherited from View)
IHotReloadableView.TransferState(IView) (Inherited from View)
ILayout.ClipsToBounds (Inherited from Layout)
INameScope.RegisterName(String, Object)

For internal use by .NET MAUI.

(Inherited from Element)
INameScope.UnregisterName(String)

For internal use by .NET MAUI.

(Inherited from Element)
IPaddingElement.OnPaddingPropertyChanged(Thickness, Thickness) (Inherited from Layout)
IPaddingElement.PaddingDefaultValueCreator() (Inherited from Layout)
IPropertyMapperView.GetPropertyMapperOverrides() (Inherited from View)
IReplaceableView.ReplacedView (Inherited from View)
IToolTipElement.ToolTip

Represents a small rectangular pop-up window that displays a brief description of a view's purpose when the user rests the pointer on the view.

(Inherited from Element)
IView.Arrange(Rect)

Positions child elements and determines a size for an Element.

(Inherited from VisualElement)
IView.Background

Gets the paint which will fill the background of a View.

(Inherited from VisualElement)
IView.Clip

Gets the Path used to define the outline of the contents of a View.

(Inherited from VisualElement)
IView.FlowDirection

Direction in which the UI elements are scanned by the eye

(Inherited from VisualElement)
IView.Height

Gets the specified height of the IView.

(Inherited from VisualElement)
IView.HorizontalLayoutAlignment

Determines the horizontal aspect of this element's arrangement in a container

(Inherited from View)
IView.InvalidateArrange()

Method that is called to invalidate the layout of this View.

(Inherited from VisualElement)
IView.InvalidateMeasure()

Signals that the current measure value of this View is no longer valid and must be recomputed during the next measure pass.

(Inherited from VisualElement)
IView.IsFocused

Gets a value indicating whether this View is focused currently.

(Inherited from VisualElement)
IView.Margin

The Margin represents the distance between an view and its adjacent views.

(Inherited from View)
IView.MaximumHeight

Gets the specified maximum height constraint of the IView, between zero and double.PositiveInfinity.

(Inherited from VisualElement)
IView.MaximumWidth

Gets the specified maximum width constraint of the IView, between zero and double.PositiveInfinity.

(Inherited from VisualElement)
IView.Measure(Double, Double)

Updates the size of an View.

(Inherited from VisualElement)
IView.MinimumHeight

Gets the specified minimum height constraint of the IView, between zero and double.PositiveInfinity.

(Inherited from VisualElement)
IView.MinimumWidth

Gets the specified minimum width constraint of the IView, between zero and double.PositiveInfinity.

(Inherited from VisualElement)
IView.Semantics

Adds semantics to every View for accessibility

(Inherited from VisualElement)
IView.Shadow

Paints a shadow around the target View.

(Inherited from VisualElement)
IView.VerticalLayoutAlignment

Determines the vertical aspect of this element's arrangement in a container

(Inherited from View)
IView.Visibility

Gets a value that determines whether this View should be part of the visual tree or not.

(Inherited from VisualElement)
IView.Width

Gets the specified width of the IView.

(Inherited from VisualElement)
IVisualElementController.EffectiveFlowDirection

For internal use by .NET MAUI.

(Inherited from VisualElement)
IVisualElementController.InvalidateMeasure(InvalidationTrigger)

For internal use by .NET MAUI.

(Inherited from VisualElement)
IVisualTreeElement.GetVisualChildren() (Inherited from Layout)
IVisualTreeElement.GetVisualParent()

Gets the element's visual parent.

(Inherited from Element)

Extension Methods

AbortAnimation(IAnimatable, String)

Stops the animation.

Animate(IAnimatable, String, Animation, UInt32, UInt32, Easing, Action<Double,Boolean>, Func<Boolean>)

Sets the specified parameters and starts the animation.

Animate(IAnimatable, String, Action<Double>, Double, Double, UInt32, UInt32, Easing, Action<Double,Boolean>, Func<Boolean>)

Sets the specified parameters and starts the animation.

Animate(IAnimatable, String, Action<Double>, UInt32, UInt32, Easing, Action<Double,Boolean>, Func<Boolean>)

Sets the specified parameters and starts the animation.

Animate<T>(IAnimatable, String, Func<Double,T>, Action<T>, UInt32, UInt32, Easing, Action<T,Boolean>, Func<Boolean>, IAnimationManager)

Sets the specified parameters and starts the animation.

AnimateKinetic(IAnimatable, String, Func<Double,Double,Boolean>, Double, Double, Action, IAnimationManager)

Sets the specified parameters and starts the kinetic animation.

AnimationIsRunning(IAnimatable, String)

Returns a Boolean value that indicates whether or not the animation that is specified by handle is running.

Batch(IAnimatable)
GetPropertyIfSet<T>(BindableObject, BindableProperty, T)
SetAppTheme<T>(BindableObject, BindableProperty, T, T)
SetAppThemeColor(BindableObject, BindableProperty, Color, Color)
SetBinding(BindableObject, BindableProperty, String, BindingMode, IValueConverter, String)

Creates and applies a binding to a property.

FindByName<T>(Element, String)
CancelAnimations(VisualElement)

Aborts all animations (e.g. LayoutTo, TranslateTo, ScaleTo, etc.) on the view element.

FadeTo(VisualElement, Double, UInt32, Easing)

Returns a task that performs the fade that is described by the opacity, length, and easing parameters.

LayoutTo(VisualElement, Rect, UInt32, Easing) Returns a task that eases the bounds of the VisualElement that is specified by the view to the rectangle that is specified by the bounds parameter.
RelRotateTo(VisualElement, Double, UInt32, Easing)

Rotates the VisualElement that is specified by view from its current rotation by drotation.

RelScaleTo(VisualElement, Double, UInt32, Easing)

Returns a task that scales the VisualElement that is specified by view from its current scale to dscale.

RotateTo(VisualElement, Double, UInt32, Easing)

Returns a task that rotates the VisualElement that is specified by view that is described by the rotation, length, and easing parameters.

RotateXTo(VisualElement, Double, UInt32, Easing)

Returns a task that skews the X axis of the the VisualElement that is specified by view by rotation, taking time length and using easing.

RotateYTo(VisualElement, Double, UInt32, Easing)

Returns a task that skews the Y axis of the the VisualElement that is specified by view by rotation, taking time length and using easing.

ScaleTo(VisualElement, Double, UInt32, Easing)

Returns a task that scales the VisualElement that is specified by view to the absolute scale factor scale.

ScaleXTo(VisualElement, Double, UInt32, Easing)

Returns a task that scales the X axis of the the VisualElement that is specified by view to the absolute scale factor scale.

ScaleYTo(VisualElement, Double, UInt32, Easing)

Returns a task that scales the Y axis of the the VisualElement that is specified by view to the absolute scale factor scale.

TranslateTo(VisualElement, Double, Double, UInt32, Easing)

Animates an elements TranslationX and TranslationY properties from their current values to the new values. This ensures that the input layout is in the same position as the visual layout.

HasVisualStateGroups(VisualElement)

Returns true if element has one or more visual state groups associated with it. Otherwise, returns false.

CheckHandlers(IView)
ComputeDesiredSize(IView, Double, Double)
ComputeFrame(IView, Rect)
ToHandler(IElement, IMauiContext)
ToPlatform(IElement, IMauiContext)
ToHandler(IView, IMauiContext)
SetSemanticFocus(IView)
CaptureAsync(IView)
GetVisualElementWindow(IVisualTreeElement)

Gets the Window containing the Visual Tree Element, if the element is contained within one.

GetVisualTreeDescendants(IVisualTreeElement)

Gets the entire hierarchy of descendants as a list of children for a given Visual Tree Element.

GetVisualTreeElements(IVisualTreeElement, Point)

Gets list of a Visual Tree Element's children based off of a given Point.

GetVisualTreeElements(IVisualTreeElement, Rect)

Gets list of a Visual Tree Elements children based off of a rectangle.

GetVisualTreeElements(IVisualTreeElement, Double, Double)

Gets list of a Visual Tree Elements children based off of a given x, y point.

GetVisualTreeElements(IVisualTreeElement, Double, Double, Double, Double)

Gets list of a Visual Tree Elements children based off of a rectangle defined by its coordinates which are specified in platform units, not pixels.

Applies to