Interactive Class

Summary

Base class for objects that raise routed events.
graph BT Type-->Base0["Layoutable"] click Base0 "/api/Avalonia.Layout/Layoutable" Base0-->Base1["Visual"] click Base1 "/api/Avalonia/Visual" Base1-->Base2["StyledElement"] click Base2 "/api/Avalonia/StyledElement" Base2-->Base3["Animatable"] click Base3 "/api/Avalonia.Animation/Animatable" Base3-->Base4["AvaloniaObject"] click Base4 "/api/Avalonia/AvaloniaObject" Base4-->Base5["object"] Type-.->Interface0["IAvaloniaObjectDebug"] click Interface0 "/api/Avalonia.Diagnostics/IAvaloniaObjectDebug" Type-.->Interface1["INotifyPropertyChanged"] Type-.->Interface2["IValueSink"] Type-.->Interface3["IStyledElement"] click Interface3 "/api/Avalonia/IStyledElement" Type-.->Interface4["IStyleable"] click Interface4 "/api/Avalonia.Styling/IStyleable" Type-.->Interface5["INamed"] click Interface5 "/api/Avalonia/INamed" Type-.->Interface6["IStyleHost"] click Interface6 "/api/Avalonia.Styling/IStyleHost" Type-.->Interface7["ILogical"] click Interface7 "/api/Avalonia.LogicalTree/ILogical" Type-.->Interface8["IResourceHost"] click Interface8 "/api/Avalonia.Controls/IResourceHost" Type-.->Interface9["IResourceNode"] click Interface9 "/api/Avalonia.Controls/IResourceNode" Type-.->Interface10["IDataContextProvider"] click Interface10 "/api/Avalonia/IDataContextProvider" Type-.->Interface11["IAvaloniaObject"] click Interface11 "/api/Avalonia/IAvaloniaObject" Type-.->Interface12["ISupportInitialize"] Type-.->Interface13["ISetLogicalParent"] click Interface13 "/api/Avalonia.Controls/ISetLogicalParent" Type-.->Interface14["ISetInheritanceParent"] click Interface14 "/api/Avalonia.Controls/ISetInheritanceParent" Type-.->Interface15["ILayoutable"] click Interface15 "/api/Avalonia.Layout/ILayoutable" Type-.->Interface16["IVisual"] click Interface16 "/api/Avalonia.VisualTree/IVisual" Type-.->Interface17["IInteractive"] click Interface17 "/api/Avalonia.Interactivity/IInteractive" Type["Interactive"] class Type type-node Derived0["InputElement"]-->Type click Derived0 "/api/Avalonia.Input/InputElement"

Syntax

public class Interactive : Layoutable, IAvaloniaObjectDebug, INotifyPropertyChanged, IValueSink, 
    IStyledElement, IStyleable, INamed, IStyleHost, ILogical, IResourceHost, IResourceNode, 
    IDataContextProvider, IAvaloniaObject, ISupportInitialize, ISetLogicalParent, 
    ISetInheritanceParent, ILayoutable, IVisual, IInteractive

Events

Name Type Summary
AttachedToLogicalTree EventHandler<LogicalTreeAttachmentEventArgs>?
Raised when the styled element is attached to a rooted logical tree.
Inherited from StyledElement
AttachedToVisualTree EventHandler<VisualTreeAttachmentEventArgs>
Raised when the control is attached to a rooted visual tree.
Inherited from Visual
DataContextChanged EventHandler?
Occurs when the DataContext property changes.
Inherited from StyledElement
DetachedFromLogicalTree EventHandler<LogicalTreeAttachmentEventArgs>?
Raised when the styled element is detached from a rooted logical tree.
Inherited from StyledElement
DetachedFromVisualTree EventHandler<VisualTreeAttachmentEventArgs>
Raised when the control is detached from a rooted visual tree.
Inherited from Visual
EffectiveViewportChanged EventHandler<EffectiveViewportChangedEventArgs>?
Occurs when the element's effective viewport changes.
Inherited from Layoutable
Initialized EventHandler?
Occurs when the styled element has finished initialization.
Inherited from StyledElement
LayoutUpdated EventHandler?
Occurs when a layout pass completes for the control.
Inherited from Layoutable
PropertyChanged EventHandler<AvaloniaPropertyChangedEventArgs>
Raised when a AvaloniaProperty value changes on this object.
Inherited from AvaloniaObject
ResourcesChanged EventHandler<ResourcesChangedEventArgs>?
Occurs when a resource in this styled element or a parent styled element has changed.
Inherited from StyledElement

Fields

Name Constant Value Summary
BoundsProperty
Defines the Bounds property.
Inherited from Visual
static
ClipProperty
Defines the Clip property.
Inherited from Visual
static
ClipToBoundsProperty
Defines the ClipToBounds property.
Inherited from Visual
static
ClockProperty
Defines the Clock property.
Inherited from Animatable
static
DataContextProperty
Defines the DataContext property.
Inherited from StyledElement
static
DesiredSizeProperty
Defines the DesiredSize property.
Inherited from Layoutable
static
HeightProperty
Defines the Height property.
Inherited from Layoutable
static
HorizontalAlignmentProperty
Defines the HorizontalAlignment property.
Inherited from Layoutable
static
IsVisibleProperty
Defines the IsVisibleProperty property.
Inherited from Visual
static
MarginProperty
Defines the Margin property.
Inherited from Layoutable
static
MaxHeightProperty
Defines the MaxHeight property.
Inherited from Layoutable
static
MaxWidthProperty
Defines the MaxWidth property.
Inherited from Layoutable
static
MinHeightProperty
Defines the MinHeight property.
Inherited from Layoutable
static
MinWidthProperty
Defines the MinWidth property.
Inherited from Layoutable
static
NameProperty
Defines the Name property.
Inherited from StyledElement
static
OpacityMaskProperty
Defines the OpacityMask property.
Inherited from Visual
static
OpacityProperty
Defines the Opacity property.
Inherited from Visual
static
ParentProperty
Defines the Parent property.
Inherited from StyledElement
static
RenderTransformOriginProperty
Defines the RenderTransformOrigin property.
Inherited from Visual
static
RenderTransformProperty
Defines the RenderTransform property.
Inherited from Visual
static
TemplatedParentProperty
Defines the TemplatedParent property.
Inherited from StyledElement
static
TransformedBoundsProperty
Inherited from Visual
static
TransitionsProperty
Defines the Transitions property.
Inherited from Animatable
static
UseLayoutRoundingProperty
Defines the UseLayoutRoundingProperty property.
Inherited from Layoutable
static
VerticalAlignmentProperty
Defines the VerticalAlignment property.
Inherited from Layoutable
static
VisualParentProperty
Defines the VisualParent property.
Inherited from Visual
static
WidthProperty
Defines the Width property.
Inherited from Layoutable
static
ZIndexProperty
Defines the ZIndex property.
Inherited from Visual
static

Properties

Name Value Summary
Bounds Rect
Gets the bounds of the control relative to its parent.
Inherited from Visual
Classes Classes
Gets or sets the styled element's classes.
Inherited from StyledElement
Clip Geometry
Gets or sets the geometry clip for this visual.
Inherited from Visual
ClipToBounds bool
Gets or sets a value indicating whether the control should be clipped to its bounds.
Inherited from Visual
Clock IClock
Gets or sets the clock which controls the animations on the control.
Inherited from Animatable
DataContext object?
Gets or sets the control's data context.
Inherited from StyledElement
DesiredSize Size
Gets the size that this element computed during the measure pass of the layout process.
Inherited from Layoutable
Height double
Gets or sets the height of the element.
Inherited from Layoutable
HorizontalAlignment HorizontalAlignment
Gets or sets the element's preferred horizontal alignment in its parent.
Inherited from Layoutable
InheritanceParent IAvaloniaObject
Gets or sets the parent object that inherited AvaloniaProperty values are inherited from.
Inherited from AvaloniaObject
IsArrangeValid bool
Gets a value indicating whether the control's layouts arrange is valid.
Inherited from Layoutable
IsEffectivelyVisible bool
Gets a value indicating whether this control and all its parents are visible.
Inherited from Visual
IsInitialized bool
Gets a value that indicates whether the element has finished initialization.
Inherited from StyledElement
IsMeasureValid bool
Gets a value indicating whether the control's layout measure is valid.
Inherited from Layoutable
IsVisible bool
Gets or sets a value indicating whether this control is visible.
Inherited from Visual
LogicalChildren IAvaloniaList<ILogical>
Gets the styled element's logical children.
Inherited from StyledElement
Margin Thickness
Gets or sets the margin around the element.
Inherited from Layoutable
MaxHeight double
Gets or sets the maximum height of the element.
Inherited from Layoutable
MaxWidth double
Gets or sets the maximum width of the element.
Inherited from Layoutable
MinHeight double
Gets or sets the minimum height of the element.
Inherited from Layoutable
MinWidth double
Gets or sets the minimum width of the element.
Inherited from Layoutable
Name string?
Gets or sets the name of the styled element.
Inherited from StyledElement
Opacity double
Gets or sets the opacity of the control.
Inherited from Visual
OpacityMask IBrush
Gets or sets the opacity mask of the control.
Inherited from Visual
Parent IStyledElement?
Gets the styled element's logical parent.
Inherited from StyledElement
PseudoClasses IPseudoClasses
Gets the Classes collection in a form that allows adding and removing pseudoclasses.
Inherited from StyledElement
RenderTransform ITransform
Gets or sets the render transform of the control.
Inherited from Visual
RenderTransformOrigin RelativePoint
Gets or sets the transform origin of the control.
Inherited from Visual
Resources IResourceDictionary
Gets or sets the styled element's resource dictionary.
Inherited from StyledElement
Styles Styles
Gets the styles for the styled element.
Inherited from StyledElement
TemplatedParent ITemplatedControl?
Gets the styled element whose lookless template this styled element is part of.
Inherited from StyledElement
this[AvaloniaProperty] object
Gets or sets the value of a AvaloniaProperty.
Inherited from AvaloniaObject
this[IndexerDescriptor] IBinding
Gets or sets a binding for a AvaloniaProperty.
Inherited from AvaloniaObject
TransformedBounds TransformedBounds?
Gets the bounds of the control relative to the window, accounting for rendering transforms.
Inherited from Visual
Transitions Transitions?
Gets or sets the property transitions for the control.
Inherited from Animatable
UseLayoutRounding bool
Gets or sets a value that determines whether the element should be snapped to pixel boundaries at layout time.
Inherited from Layoutable
VerticalAlignment VerticalAlignment
Gets or sets the element's preferred vertical alignment in its parent.
Inherited from Layoutable
VisualChildren IAvaloniaList<IVisual>
Gets the control's child visuals.
Inherited from Visual
VisualRoot IRenderRoot
Gets the root of the visual tree, if the control is attached to a visual tree.
Inherited from Visual
Width double
Gets or sets the width of the element.
Inherited from Layoutable
ZIndex int
Gets or sets the Z index of the control.
Inherited from Visual

Methods

Name Value Summary
AddHandler(RoutedEvent, Delegate, RoutingStrategies, bool) void
Adds a handler for the specified routed event.
AddHandler<TEventArgs>(RoutedEvent<TEventArgs>, EventHandler<TEventArgs>, RoutingStrategies, bool) void
Adds a handler for the specified routed event.
AffectsArrange(AvaloniaProperty[]) void
Marks a property as affecting the control's arrangement.
Inherited from Layoutable
static
AffectsArrange<T>(AvaloniaProperty[]) void
Marks a property as affecting the control's arrangement.
Inherited from Layoutable
static
AffectsMeasure(AvaloniaProperty[]) void
Marks a property as affecting the control's measurement.
Inherited from Layoutable
static
AffectsMeasure<T>(AvaloniaProperty[]) void
Marks a property as affecting the control's measurement.
Inherited from Layoutable
static
AffectsRender(AvaloniaProperty[]) void
Indicates that a property change should cause InvalidateVisual() to be called.
Inherited from Visual
static
AffectsRender<T>(AvaloniaProperty[]) void
Indicates that a property change should cause InvalidateVisual() to be called.
Inherited from Visual
static
ApplyStyling() bool
Applies styling to the control if the control is initialized and styling is not already applied.
Inherited from StyledElement
ApplyTemplate() void
Creates the visual children of the control, if necessary
Inherited from Layoutable
Arrange(Rect) void
Arranges the control and its children.
Inherited from Layoutable
ArrangeCore(Rect) void
The default implementation of the control's arrange pass.
Inherited from Layoutable
ArrangeOverride(Size) Size
Positions child elements as part of a layout pass.
Inherited from Layoutable
BeginBatchUpdate() void
Inherited from AvaloniaObject
BeginInit() void
Inherited from StyledElement
Bind<T>(DirectPropertyBase<T>, IObservable<BindingValue<T>>) IDisposable
Binds a AvaloniaProperty to an observable.
Inherited from AvaloniaObject
Bind<T>(StyledPropertyBase<T>, IObservable<BindingValue<T>>, BindingPriority) IDisposable
Binds a AvaloniaProperty to an observable.
Inherited from AvaloniaObject
BuildEventRoute(RoutedEvent) EventRoute
Builds an event route for a routed event.
CheckAccess() bool
Inherited from AvaloniaObject
ClearValue(AvaloniaProperty) void
Clears a AvaloniaProperty's local value.
Inherited from AvaloniaObject
ClearValue<T>(AvaloniaProperty<T>) void
Clears a AvaloniaProperty's local value.
Inherited from AvaloniaObject
ClearValue<T>(DirectPropertyBase<T>) void
Clears a AvaloniaProperty's local value.
Inherited from AvaloniaObject
ClearValue<T>(StyledPropertyBase<T>) void
Clears a AvaloniaProperty's local value.
Inherited from AvaloniaObject
CoerceValue<T>(StyledPropertyBase<T>) void
Coerces the specified AvaloniaProperty.
Inherited from AvaloniaObject
DisableTransitions() void
Disables transitions for the control.
Inherited from Animatable
EnableTransitions() void
Enables transitions for the control.
Inherited from Animatable
EndBatchUpdate() void
Inherited from AvaloniaObject
EndInit() void
Inherited from StyledElement
Equals(object) bool
Compares two objects using reference equality.
Inherited from AvaloniaObject
GetBaseValue<T>(StyledPropertyBase<T>, BindingPriority) Optional<T>
Gets an AvaloniaProperty base value.
Inherited from AvaloniaObject
GetHashCode() int
Gets the hash code for the object.
Inherited from AvaloniaObject
GetValue(AvaloniaProperty) object
Gets a AvaloniaProperty value.
Inherited from AvaloniaObject
GetValue<T>(DirectPropertyBase<T>) T
Gets a AvaloniaProperty value.
Inherited from AvaloniaObject
GetValue<T>(StyledPropertyBase<T>) T
Gets a AvaloniaProperty value.
Inherited from AvaloniaObject
InitializeIfNeeded() void
Inherited from StyledElement
InvalidateArrange() void
Invalidates the arrangement of the control and queues a new layout pass.
Inherited from Layoutable
InvalidateMeasure() void
Invalidates the measurement of the control and queues a new layout pass.
Inherited from Layoutable
InvalidateStyles() void
Inherited from Layoutable
InvalidateVisual() void
Invalidates the visual and queues a repaint.
Inherited from Visual
IsAnimating(AvaloniaProperty) bool
Checks whether a AvaloniaProperty is animating.
Inherited from AvaloniaObject
IsSet(AvaloniaProperty) bool
Checks whether a AvaloniaProperty is set on this object.
Inherited from AvaloniaObject
LogicalChildrenCollectionChanged(object, NotifyCollectionChangedEventArgs) void
Inherited from Visual
Measure(Size) void
Carries out a measure of the control.
Inherited from Layoutable
MeasureCore(Size) Size
The default implementation of the control's measure pass.
Inherited from Layoutable
MeasureOverride(Size) Size
Measures the control and its child elements as part of a layout pass.
Inherited from Layoutable
NotifyChildResourcesChanged(ResourcesChangedEventArgs) void
Notifies child controls that a change has been made to resources that apply to them.
Inherited from StyledElement
OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs) void
Called when the styled element is added to a rooted logical tree.
Inherited from StyledElement
OnAttachedToVisualTree(VisualTreeAttachmentEventArgs) void
Called when the control is added to a rooted visual tree.
Inherited from Visual
OnAttachedToVisualTreeCore(VisualTreeAttachmentEventArgs) void
Inherited from Layoutable
OnDataContextBeginUpdate() void
Called when the DataContext begins updating.
Inherited from StyledElement
OnDataContextChanged(EventArgs) void
Called when the DataContext property changes.
Inherited from StyledElement
OnDataContextEndUpdate() void
Called when the DataContext finishes updating.
Inherited from StyledElement
OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs) void
Called when the styled element is removed from a rooted logical tree.
Inherited from StyledElement
OnDetachedFromVisualTree(VisualTreeAttachmentEventArgs) void
Called when the control is removed from a rooted visual tree.
Inherited from Visual
OnDetachedFromVisualTreeCore(VisualTreeAttachmentEventArgs) void
Inherited from Layoutable
OnInitialized() void
Called when the control finishes initialization.
Inherited from StyledElement
OnMeasureInvalidated() void
Called by InvalidateMeasure
Inherited from Layoutable
OnPropertyChangedCore<T>(AvaloniaPropertyChangedEventArgs<T>) void
Inherited from Animatable
OnVisualParentChanged(IVisual, IVisual) void
Called when the control's visual parent changes.
Inherited from Layoutable
RaiseEvent(RoutedEventArgs) void
Raises a routed event.
RemoveHandler(RoutedEvent, Delegate) void
Removes a handler for the specified routed event.
RemoveHandler<TEventArgs>(RoutedEvent<TEventArgs>, EventHandler<TEventArgs>) void
Removes a handler for the specified routed event.
Render(DrawingContext) void
Renders the visual to a DrawingContext.
Inherited from Visual
SetValue(AvaloniaProperty, object, BindingPriority) void
Sets a AvaloniaProperty value.
Inherited from AvaloniaObject
SetValue<T>(DirectPropertyBase<T>, T) void
Sets a AvaloniaProperty value.
Inherited from AvaloniaObject
SetValue<T>(StyledPropertyBase<T>, T, BindingPriority) IDisposable
Sets a AvaloniaProperty value.
Inherited from AvaloniaObject
VerifyAccess() void
Inherited from AvaloniaObject

Extension Methods

Name Value Summary
AddDisposableHandler<TEventArgs>(RoutedEvent<TEventArgs>, EventHandler<TEventArgs>, RoutingStrategies, bool) IDisposable
Adds a handler for the specified routed event and returns a disposable that can terminate the event subscription.
Bind(AvaloniaProperty, IObservable<BindingValue<object>>, BindingPriority) IDisposable
Binds a AvaloniaProperty to an observable.
Bind<T>(AvaloniaProperty<T>, IObservable<BindingValue<T>>, BindingPriority) IDisposable
Binds a AvaloniaProperty to an observable.
BindClass(string, IBinding, object) IDisposable
CalculateDistanceFromAncestor(IVisual) int
Calculates the distance from a visual's ancestor.
Find<T>(string) T
Finds a named element in an INameScope.
FindAncestorOfType<T>(bool) T
Finds first ancestor of given type.
FindCommonVisualAncestor(IVisual) IVisual
Tries to get the first common ancestor of two visuals.
FindDescendantOfType<T>(bool) T
Finds first descendant of given type.
FindLogicalAncestorOfType<T>(bool) T
Finds first ancestor of given type.
FindLogicalDescendantOfType<T>(bool) T
Finds first descendant of given type.
FindNameScope() INameScope
FindResource(object) object?
Finds the specified resource by searching up the logical tree and then global styles.
Get<T>(string) T
Gets a named element from an INameScope or throws if no element of the requested name was found.
GetBindingObservable(AvaloniaProperty) IObservable<BindingValue<object>>
Gets an observable for a AvaloniaProperty.
GetBindingObservable<T>(AvaloniaProperty<T>) IObservable<BindingValue<T>>
Gets an observable for a AvaloniaProperty.
GetBindingSubject(AvaloniaProperty, BindingPriority) ISubject<BindingValue<object>>
Gets a subject for a AvaloniaProperty.
GetBindingSubject<T>(AvaloniaProperty<T>, BindingPriority) ISubject<BindingValue<T>>
Gets a subject for a AvaloniaProperty.
GetDiagnostic(AvaloniaProperty) AvaloniaPropertyValue
Gets a diagnostic for a AvaloniaProperty on a AvaloniaObject.
GetLogicalAncestors() IEnumerable<ILogical>
Enumerates the ancestors of an ILogical in the logical tree.
GetLogicalChildren() IEnumerable<ILogical>
Enumerates the children of an ILogical in the logical tree.
GetLogicalDescendants() IEnumerable<ILogical>
Enumerates the descendants of an ILogical in the logical tree.
GetLogicalParent() ILogical
Gets the logical parent of an ILogical.
GetLogicalParent<T>() T
Gets the logical parent of an ILogical.
GetLogicalSiblings() IEnumerable<ILogical>
Enumerates the siblings of an ILogical in the logical tree.
GetObservable(AvaloniaProperty) IObservable<object>
Gets an observable for a AvaloniaProperty.
GetObservable<T>(AvaloniaProperty<T>) IObservable<T>
Gets an observable for a AvaloniaProperty.
GetObservable<TEventArgs>(RoutedEvent<TEventArgs>, RoutingStrategies, bool) IObservable<TEventArgs>
Gets an observable for a RoutedEvent<TEventArgs>.
GetPropertyChangedObservable(AvaloniaProperty) IObservable<AvaloniaPropertyChangedEventArgs>
Gets an observable that listens for property changed events for an AvaloniaProperty.
GetResourceObservable(object, Func<object?, object?>?) IObservable<object?>
GetSelfAndLogicalAncestors() IEnumerable<ILogical>
Enumerates an ILogical and its ancestors in the logical tree.
GetSelfAndLogicalDescendants() IEnumerable<ILogical>
Enumerates an ILogical and its descendants in the logical tree.
GetSelfAndVisualAncestors() IEnumerable<IVisual>
Enumerates an IVisual and its ancestors in the visual tree.
GetSelfAndVisualDescendants() IEnumerable<IVisual>
Enumerates an IVisual and its descendants in the visual tree.
GetStyleDiagnostics() StyleDiagnostics
Gets a style diagnostics for a StyledElement.
GetSubject(AvaloniaProperty, BindingPriority) ISubject<object>
Gets a subject for a AvaloniaProperty.
GetSubject<T>(AvaloniaProperty<T>, BindingPriority) ISubject<T>
Gets a subject for a AvaloniaProperty.
GetVisualAncestors() IEnumerable<IVisual>
Enumerates the ancestors of an IVisual in the visual tree.
GetVisualAt(Point) IVisual
Gets the first visual in the visual tree whose bounds contain a point.
GetVisualAt(Point, Func<IVisual, bool>) IVisual
Gets the first visual in the visual tree whose bounds contain a point.
GetVisualChildren() IEnumerable<IVisual>
Enumerates the children of an IVisual in the visual tree.
GetVisualDescendants() IEnumerable<IVisual>
Enumerates the descendants of an IVisual in the visual tree.
GetVisualParent() IVisual
Gets the visual parent of an IVisual.
GetVisualParent<T>() T
Gets the visual parent of an IVisual.
GetVisualRoot() IRenderRoot
Gets the root visual for an IVisual.
GetVisualsAt(Point) IEnumerable<IVisual>
Enumerates the visible visuals in the visual tree whose bounds contain a point.
GetVisualsAt(Point, Func<IVisual, bool>) IEnumerable<IVisual>
Enumerates the visuals in the visual tree whose bounds contain a point.
HitTestCustom(Point) bool
IsLogicalAncestorOf(ILogical) bool
Tests whether an ILogical is an ancestor of another logical.
IsVisualAncestorOf(IVisual) bool
Tests whether an IVisual is an ancestor of another visual.
PointToClient(PixelPoint) Point
Converts a point from screen to client coordinates.
PointToScreen(Point) PixelPoint
Converts a point from client to screen coordinates.
RegisterInNameScope<Interactive>(INameScope) T
TransformToVisual(IVisual) Matrix?
Returns a transform that transforms the visual's coordinates into the coordinates of the specified to.
TranslatePoint(Point, IVisual) Point?
Translates a point relative to this visual to coordinates that are relative to the specified visual.
TryFindResource(object, object?) bool
Tries to the specified resource by searching up the logical tree and then global styles.