Skip to main content

Layoutable Class

Definition

Namespace:Avalonia.Layout
Assembly:Avalonia.Base
Package:Avalonia

Implements layout-related functionality for a control.

public class Layoutable

Inheritance: object -> AvaloniaObject -> Animatable -> StyledElement -> Visual -> Layoutable

Derived types:Interactive

Constructors

NameDescription
LayoutableNo summary available.

Layoutable Constructor

public Layoutable()

Methods

NameDescription
ApplyStylingApplies styling to the control if the control is initialized and styling is not already applied. Inherited from StyledElement.
ApplyTemplateCreates the visual children of the control, if necessary
ArrangeArranges the control and its children.
BeginInitInherited from StyledElement.
Bind (8 overloads)Binds a Avalonia.AvaloniaProperty to an Avalonia.Data.BindingBase. Inherited from AvaloniaObject.
CheckAccessReturns a value indicating whether the current thread is the UI thread. Inherited from AvaloniaObject.
ClearValue (4 overloads)Clears a Avalonia.AvaloniaProperty's local value. Inherited from AvaloniaObject.
CoerceValueCoerces the specified Avalonia.AvaloniaProperty. Inherited from AvaloniaObject.
EndInitInherited from StyledElement.
EqualsCompares two objects using reference equality. Inherited from AvaloniaObject.
GetBaseValueInherited from AvaloniaObject.
GetFlowDirectionGets the value of the attached Avalonia.Visual.FlowDirectionProperty on a control. Inherited from Visual.
GetHashCodeGets the hash code for the object. Inherited from AvaloniaObject.
GetValue (3 overloads)Gets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject.
InvalidateArrangeInvalidates the arrangement of the control and queues a new layout pass.
InvalidateMeasureInvalidates the measurement of the control and queues a new layout pass.
InvalidateVisualInvalidates the visual and queues a repaint. Inherited from Visual.
IsAnimatingChecks whether a Avalonia.AvaloniaProperty is animating. Inherited from AvaloniaObject.
IsSetChecks whether a Avalonia.AvaloniaProperty is set on this object. Inherited from AvaloniaObject.
MeasureCarries out a measure of the control.
RenderRenders the visual to a Avalonia.Media.DrawingContext. Inherited from Visual.
SetCurrentValue (2 overloads)Sets the value of a dependency property without changing its value source. Inherited from AvaloniaObject.
SetFlowDirectionSets the value of the attached Avalonia.Visual.FlowDirectionProperty on a control. Inherited from Visual.
SetValue (3 overloads)Sets a Avalonia.AvaloniaProperty value. Inherited from AvaloniaObject.
TryGetResourceInherited from StyledElement.
UpdateLayoutExecutes a layout pass.
VerifyAccessChecks that the current thread is the UI thread and throws if not. Inherited from AvaloniaObject.

ApplyTemplate Method

Creates the visual children of the control, if necessary

public void ApplyTemplate()

Arrange Method

Arranges the control and its children.

public void Arrange(Avalonia.Rect rect)

Parameters

rect Avalonia.Rect

The control's new bounds.

InvalidateArrange Method

Invalidates the arrangement of the control and queues a new layout pass.

public void InvalidateArrange()

InvalidateMeasure Method

Invalidates the measurement of the control and queues a new layout pass.

public void InvalidateMeasure()

Measure Method

Carries out a measure of the control.

public void Measure(Avalonia.Size availableSize)

Parameters

availableSize Avalonia.Size

The available size for the control.

UpdateLayout Method

Executes a layout pass.

public void UpdateLayout()

Remarks

You should not usually need to call this method explictly, the layout manager will schedule layout passes itself.

Properties

NameDescription
ActualThemeVariantGets the UI theme that is currently used by the element, which might be different than the RequestedThemeVariantProperty. Inherited from StyledElement.
BoundsGets the bounds of the control relative to its parent. Inherited from Visual.
CacheModeGets or sets the cache mode of the visual. Inherited from Visual.
ClassesGets or sets the styled element's classes. Inherited from StyledElement.
ClipGets or sets the geometry clip for this visual. Inherited from Visual.
ClipToBoundsGets or sets a value indicating whether the control should be clipped to its bounds. Inherited from Visual.
DataContextGets or sets the control's data context. Inherited from StyledElement.
DesiredSizeGets the size that this element computed during the measure pass of the layout process.
DispatcherReturns the Avalonia.AvaloniaObject.Dispatcher that this Avalonia.AvaloniaObject is associated with. Inherited from AvaloniaObject.
EffectGets or sets the effect of the control. Inherited from Visual.
FlowDirectionGets or sets the text flow direction. Inherited from Visual.
HasMirrorTransformGets or sets a value indicating whether to apply mirror transform on this control. Inherited from Visual.
HeightGets or sets the height of the element.
HorizontalAlignmentGets or sets the element's preferred horizontal alignment in its parent.
IsArrangeValidGets a value indicating whether the control's layouts arrange is valid.
IsEffectivelyVisibleGets a value indicating whether this control and all its parents are visible. Inherited from Visual.
IsInitializedGets a value that indicates whether the element has finished initialization. Inherited from StyledElement.
IsMeasureValidGets a value indicating whether the control's layout measure is valid.
IsVisibleGets or sets a value indicating whether this control is visible. Inherited from Visual.
ItemInherited from AvaloniaObject.
MarginGets or sets the margin around the element.
MaxHeightGets or sets the maximum height of the element.
MaxWidthGets or sets the maximum width of the element.
MinHeightGets or sets the minimum height of the element.
MinWidthGets or sets the minimum width of the element.
NameGets or sets the name of the styled element. Inherited from StyledElement.
OpacityGets or sets the opacity of the control. Inherited from Visual.
OpacityMaskGets or sets the opacity mask of the control. Inherited from Visual.
ParentGets the styled element's logical parent. Inherited from StyledElement.
RenderTransformGets or sets the render transform of the control. Inherited from Visual.
RenderTransformOriginGets or sets the transform origin of the control. Inherited from Visual.
ResourcesGets or sets the styled element's resource dictionary. Inherited from StyledElement.
StyleKeyGets the type by which the element is styled. Inherited from StyledElement.
StylesGets the styles for the styled element. Inherited from StyledElement.
TemplatedParentGets the styled element whose lookless template this styled element is part of. Inherited from StyledElement.
ThemeGets or sets the theme to be applied to the element. Inherited from StyledElement.
TransitionsGets or sets the property transitions for the control. Inherited from Animatable.
UseLayoutRoundingGets or sets a value that determines whether the element should be snapped to pixel boundaries at layout time.
VerticalAlignmentGets or sets the element's preferred vertical alignment in its parent.
WidthGets or sets the width of the element.
ZIndexGets or sets the Z index of the control. Inherited from Visual.

DesiredSize Property

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

public Avalonia.Size DesiredSize { get; set; }

Height Property

Gets or sets the height of the element.

public double Height { get; set; }

HorizontalAlignment Property

Gets or sets the element's preferred horizontal alignment in its parent.

public Avalonia.Layout.HorizontalAlignment HorizontalAlignment { get; set; }

IsArrangeValid Property

Gets a value indicating whether the control's layouts arrange is valid.

public bool IsArrangeValid { get; set; }

IsMeasureValid Property

Gets a value indicating whether the control's layout measure is valid.

public bool IsMeasureValid { get; set; }

Margin Property

Gets or sets the margin around the element.

public Avalonia.Thickness Margin { get; set; }

MaxHeight Property

Gets or sets the maximum height of the element.

public double MaxHeight { get; set; }

MaxWidth Property

Gets or sets the maximum width of the element.

public double MaxWidth { get; set; }

MinHeight Property

Gets or sets the minimum height of the element.

public double MinHeight { get; set; }

MinWidth Property

Gets or sets the minimum width of the element.

public double MinWidth { get; set; }

UseLayoutRounding Property

Gets or sets a value that determines whether the element should be snapped to pixel boundaries at layout time.

public bool UseLayoutRounding { get; set; }

VerticalAlignment Property

Gets or sets the element's preferred vertical alignment in its parent.

public Avalonia.Layout.VerticalAlignment VerticalAlignment { get; set; }

Width Property

Gets or sets the width of the element.

public double Width { get; set; }

Fields

NameDescription
BoundsPropertyDefines the Avalonia.Visual.Bounds property. Inherited from Visual.
CacheModePropertyDefines the Avalonia.Visual.CacheMode property. Inherited from Visual.
ClipPropertyDefines the Avalonia.Visual.Clip property. Inherited from Visual.
ClipToBoundsPropertyDefines the Avalonia.Visual.ClipToBounds property. Inherited from Visual.
DataContextPropertyDefines the Avalonia.StyledElement.DataContext property. Inherited from StyledElement.
DesiredSizePropertyDefines the Avalonia.Layout.Layoutable.DesiredSize property.
EffectPropertyDefines the Avalonia.Visual.Effect property. Inherited from Visual.
FlowDirectionPropertyDefines the Avalonia.Visual.FlowDirection property. Inherited from Visual.
HasMirrorTransformPropertyDefines the Avalonia.Visual.HasMirrorTransform property. Inherited from Visual.
HeightPropertyDefines the Avalonia.Layout.Layoutable.Height property.
HorizontalAlignmentPropertyDefines the Avalonia.Layout.Layoutable.HorizontalAlignment property.
IsVisiblePropertyDefines the Avalonia.Visual.IsVisible property. Inherited from Visual.
MarginPropertyDefines the Avalonia.Layout.Layoutable.Margin property.
MaxHeightPropertyDefines the Avalonia.Layout.Layoutable.MaxHeight property.
MaxWidthPropertyDefines the Avalonia.Layout.Layoutable.MaxWidth property.
MinHeightPropertyDefines the Avalonia.Layout.Layoutable.MinHeight property.
MinWidthPropertyDefines the Avalonia.Layout.Layoutable.MinWidth property.
NamePropertyDefines the Avalonia.StyledElement.Name property. Inherited from StyledElement.
OpacityMaskPropertyDefines the Avalonia.Visual.OpacityMask property. Inherited from Visual.
OpacityPropertyDefines the Avalonia.Visual.Opacity property. Inherited from Visual.
ParentPropertyDefines the Avalonia.StyledElement.Parent property. Inherited from StyledElement.
RenderTransformOriginPropertyDefines the Avalonia.Visual.RenderTransformOrigin property. Inherited from Visual.
RenderTransformPropertyDefines the Avalonia.Visual.RenderTransform property. Inherited from Visual.
TemplatedParentPropertyDefines the Avalonia.StyledElement.TemplatedParent property. Inherited from StyledElement.
ThemePropertyDefines the Avalonia.StyledElement.Theme property. Inherited from StyledElement.
TransitionsPropertyDefines the Avalonia.Animation.Animatable.Transitions property. Inherited from Animatable.
UseLayoutRoundingPropertyDefines the Avalonia.Layout.Layoutable.UseLayoutRounding property.
VerticalAlignmentPropertyDefines the Avalonia.Layout.Layoutable.VerticalAlignment property.
VisualParentPropertyDefines the Avalonia.Visual.VisualParent property. Inherited from Visual.
WidthPropertyDefines the Avalonia.Layout.Layoutable.Width property.
ZIndexPropertyDefines the Avalonia.Visual.ZIndex property. Inherited from Visual.

DesiredSizeProperty Field

Defines the Avalonia.Layout.Layoutable.DesiredSize property.

public Avalonia.DirectProperty<TOwner,TValue><Avalonia.Layout.Layoutable, Avalonia.Size> DesiredSizeProperty

HeightProperty Field

Defines the Avalonia.Layout.Layoutable.Height property.

public Avalonia.StyledProperty<TValue><double> HeightProperty

HorizontalAlignmentProperty Field

Defines the Avalonia.Layout.Layoutable.HorizontalAlignment property.

public Avalonia.StyledProperty<TValue><Avalonia.Layout.HorizontalAlignment> HorizontalAlignmentProperty

MarginProperty Field

Defines the Avalonia.Layout.Layoutable.Margin property.

public Avalonia.StyledProperty<TValue><Avalonia.Thickness> MarginProperty

MaxHeightProperty Field

Defines the Avalonia.Layout.Layoutable.MaxHeight property.

public Avalonia.StyledProperty<TValue><double> MaxHeightProperty

MaxWidthProperty Field

Defines the Avalonia.Layout.Layoutable.MaxWidth property.

public Avalonia.StyledProperty<TValue><double> MaxWidthProperty

MinHeightProperty Field

Defines the Avalonia.Layout.Layoutable.MinHeight property.

public Avalonia.StyledProperty<TValue><double> MinHeightProperty

MinWidthProperty Field

Defines the Avalonia.Layout.Layoutable.MinWidth property.

public Avalonia.StyledProperty<TValue><double> MinWidthProperty

UseLayoutRoundingProperty Field

Defines the Avalonia.Layout.Layoutable.UseLayoutRounding property.

public Avalonia.StyledProperty<TValue><bool> UseLayoutRoundingProperty

VerticalAlignmentProperty Field

Defines the Avalonia.Layout.Layoutable.VerticalAlignment property.

public Avalonia.StyledProperty<TValue><Avalonia.Layout.VerticalAlignment> VerticalAlignmentProperty

WidthProperty Field

Defines the Avalonia.Layout.Layoutable.Width property.

public Avalonia.StyledProperty<TValue><double> WidthProperty

Events

NameDescription
ActualThemeVariantChangedRaised when the theme variant is changed on the element or an ancestor of the element. Inherited from StyledElement.
AttachedToLogicalTreeRaised when the styled element is attached to a rooted logical tree. Inherited from StyledElement.
AttachedToVisualTreeRaised when the control is attached to a rooted visual tree. Inherited from Visual.
DataContextChangedOccurs when the Avalonia.StyledElement.DataContext property changes. Inherited from StyledElement.
DetachedFromLogicalTreeRaised when the styled element is detached from a rooted logical tree. Inherited from StyledElement.
DetachedFromVisualTreeRaised when the control is detached from a rooted visual tree. Inherited from Visual.
EffectiveViewportChangedOccurs when the element's effective viewport changes.
InitializedOccurs when the styled element has finished initialization. Inherited from StyledElement.
LayoutUpdatedOccurs when a layout pass completes for the control.
PropertyChangedRaised when a Avalonia.AvaloniaProperty value changes on this object. Inherited from AvaloniaObject.
ResourcesChangedOccurs when a resource in this styled element or a parent styled element has changed. Inherited from StyledElement.

EffectiveViewportChanged Event

Occurs when the element's effective viewport changes.

public event EventHandler<Avalonia.Layout.EffectiveViewportChangedEventArgs> EffectiveViewportChanged

LayoutUpdated Event

Occurs when a layout pass completes for the control.

public event EventHandler LayoutUpdated