StyledElement Class

Summary

Extends an Animatable with the following features: - An inherited DataContext. - Implements IStyleable to allow styling to work on the styled element. - Implements ILogical to form part of a logical tree. - A collection of class strings for custom styling.
graph BT Type-->Base0["Animatable"] click Base0 "/api/Avalonia.Animation/Animatable" Base0-->Base1["AvaloniaObject"] click Base1 "/api/Avalonia/AvaloniaObject" Base1-->Base2["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["StyledElement"] class Type type-node Derived0["ScrollGestureRecognizer"]-->Type click Derived0 "/api/Avalonia.Input.GestureRecognizers/ScrollGestureRecognizer" Derived1["Visual"]-->Type click Derived1 "/api/Avalonia/Visual"

Syntax

public class StyledElement : Animatable, IAvaloniaObjectDebug, INotifyPropertyChanged, IValueSink, 
    IStyledElement, IStyleable, INamed, IStyleHost, ILogical, IResourceHost, IResourceNode, 
    IDataContextProvider, IAvaloniaObject, ISupportInitialize, ISetLogicalParent, 
    ISetInheritanceParent

Constructors

Name Summary
StyledElement() Initializes a new instance of the StyledElement class.

Events

Name Type Summary
AttachedToLogicalTree EventHandler<LogicalTreeAttachmentEventArgs>?
Raised when the styled element is attached to a rooted logical tree.
DataContextChanged EventHandler?
Occurs when the DataContext property changes.
DetachedFromLogicalTree EventHandler<LogicalTreeAttachmentEventArgs>?
Raised when the styled element is detached from a rooted logical tree.
Initialized EventHandler?
Occurs when the styled element has finished initialization.
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.

Fields

Name Constant Value Summary
ClockProperty
Defines the Clock property.
Inherited from Animatable
static
DataContextProperty
Defines the DataContext property.
static
NameProperty
Defines the Name property.
static
ParentProperty
Defines the Parent property.
static
TemplatedParentProperty
Defines the TemplatedParent property.
static
TransitionsProperty
Defines the Transitions property.
Inherited from Animatable
static

Properties

Name Value Summary
Classes Classes
Gets or sets the styled element's classes.
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.
InheritanceParent IAvaloniaObject
Gets or sets the parent object that inherited AvaloniaProperty values are inherited from.
Inherited from AvaloniaObject
IsInitialized bool
Gets a value that indicates whether the element has finished initialization.
LogicalChildren IAvaloniaList<ILogical>
Gets the styled element's logical children.
Name string?
Gets or sets the name of the styled element.
Parent IStyledElement?
Gets the styled element's logical parent.
PseudoClasses IPseudoClasses
Gets the Classes collection in a form that allows adding and removing pseudoclasses.
Resources IResourceDictionary
Gets or sets the styled element's resource dictionary.
Styles Styles
Gets the styles for the styled element.
TemplatedParent ITemplatedControl?
Gets the styled element whose lookless template this styled element is part of.
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
Transitions Transitions?
Gets or sets the property transitions for the control.
Inherited from Animatable

Methods

Name Value Summary
ApplyStyling() bool
Applies styling to the control if the control is initialized and styling is not already applied.
BeginBatchUpdate() void
Inherited from AvaloniaObject
BeginInit() void
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
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
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
InvalidateStyles() void
Detaches all styles from the element and queues a restyle.
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
NotifyChildResourcesChanged(ResourcesChangedEventArgs) void
Notifies child controls that a change has been made to resources that apply to them.
OnAttachedToLogicalTree(LogicalTreeAttachmentEventArgs) void
Called when the styled element is added to a rooted logical tree.
OnDataContextBeginUpdate() void
Called when the DataContext begins updating.
OnDataContextChanged(EventArgs) void
Called when the DataContext property changes.
OnDataContextEndUpdate() void
Called when the DataContext finishes updating.
OnDetachedFromLogicalTree(LogicalTreeAttachmentEventArgs) void
Called when the styled element is removed from a rooted logical tree.
OnInitialized() void
Called when the control finishes initialization.
OnPropertyChangedCore<T>(AvaloniaPropertyChangedEventArgs<T>) void
Inherited from Animatable
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
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
Find<T>(string) T
Finds a named element in an INameScope.
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.
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.
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.
IsLogicalAncestorOf(ILogical) bool
Tests whether an ILogical is an ancestor of another logical.
RegisterInNameScope<StyledElement>(INameScope) T
TryFindResource(object, object?) bool
Tries to the specified resource by searching up the logical tree and then global styles.