IStyleable Interface

Summary

Interface for styleable elements.
Namespace
Avalonia.Styling
Interfaces
Implementing Types
graph BT Type-.->Interface0["IAvaloniaObject"] click Interface0 "/api/Avalonia/IAvaloniaObject" Type-.->Interface1["INamed"] click Interface1 "/api/Avalonia/INamed" Type["IStyleable"] class Type type-node Implementing0["TreeViewItem"]-.->Type click Implementing0 "/api/Avalonia.Controls/TreeViewItem" Implementing1["ScrollContentPresenter"]-.->Type click Implementing1 "/api/Avalonia.Controls.Presenters/ScrollContentPresenter" Implementing2["Slider"]-.->Type click Implementing2 "/api/Avalonia.Controls/Slider" Implementing3["AboutAvaloniaDialog"]-.->Type click Implementing3 "/api/Avalonia.Dialogs/AboutAvaloniaDialog" Implementing4["IPanel"]-.->Type click Implementing4 "/api/Avalonia.Controls/IPanel" Implementing5["ContentPresenter"]-.->Type click Implementing5 "/api/Avalonia.Controls.Presenters/ContentPresenter" Implementing6["TextPresenter"]-.->Type click Implementing6 "/api/Avalonia.Controls.Presenters/TextPresenter" Implementing7["DropDown"]-.->Type click Implementing7 "/api/Avalonia.Controls/DropDown" Implementing8["TopLevel"]-.->Type click Implementing8 "/api/Avalonia.Controls/TopLevel" Implementing9["Viewbox"]-.->Type click Implementing9 "/api/Avalonia.Controls/Viewbox" Implementing10["DataGridCellsPresenter"]-.->Type click Implementing10 "/api/Avalonia.Controls.Primitives/DataGridCellsPresenter" Implementing11["DataGridRow"]-.->Type click Implementing11 "/api/Avalonia.Controls/DataGridRow" Implementing12["OverlayLayer"]-.->Type click Implementing12 "/api/Avalonia.Controls.Primitives/OverlayLayer" Implementing13["ContextMenu"]-.->Type click Implementing13 "/api/Avalonia.Controls/ContextMenu" Implementing14["ListBox"]-.->Type click Implementing14 "/api/Avalonia.Controls/ListBox" Implementing15["Separator"]-.->Type click Implementing15 "/api/Avalonia.Controls/Separator" Implementing16["TreeView"]-.->Type click Implementing16 "/api/Avalonia.Controls/TreeView" Implementing17["Polyline"]-.->Type click Implementing17 "/api/Avalonia.Controls.Shapes/Polyline" Implementing18["NumericUpDown"]-.->Type click Implementing18 "/api/Avalonia.Controls/NumericUpDown" Implementing19["ReactiveUserControl<TViewModel>"]-.->Type click Implementing19 "/api/Avalonia.ReactiveUI/ReactiveUserControl_1" Implementing20["Control"]-.->Type click Implementing20 "/api/Avalonia.Controls/Control" Implementing21["ProgressBar"]-.->Type click Implementing21 "/api/Avalonia.Controls/ProgressBar" Implementing22["RangeBase"]-.->Type click Implementing22 "/api/Avalonia.Controls.Primitives/RangeBase" Implementing23["DataValidationErrors"]-.->Type click Implementing23 "/api/Avalonia.Controls/DataValidationErrors" Implementing24["TimePicker"]-.->Type click Implementing24 "/api/Avalonia.Controls/TimePicker" Implementing25["IconElement"]-.->Type click Implementing25 "/api/Avalonia.Controls/IconElement" Implementing26["ComboBox"]-.->Type click Implementing26 "/api/Avalonia.Controls/ComboBox" Implementing27["Path"]-.->Type click Implementing27 "/api/Avalonia.Controls.Shapes/Path" Implementing28["TransitioningContentControl"]-.->Type click Implementing28 "/api/Avalonia.ReactiveUI/TransitioningContentControl" Implementing29["RemoteWidget"]-.->Type click Implementing29 "/api/Avalonia.Controls.Remote/RemoteWidget" Implementing30["DataGridFrozenGrid"]-.->Type click Implementing30 "/api/Avalonia.Controls.Primitives/DataGridFrozenGrid" Implementing31["CheckBox"]-.->Type click Implementing31 "/api/Avalonia.Controls/CheckBox" Implementing32["Shape"]-.->Type click Implementing32 "/api/Avalonia.Controls.Shapes/Shape" Implementing33["ScrollGestureRecognizer"]-.->Type click Implementing33 "/api/Avalonia.Input.GestureRecognizers/ScrollGestureRecognizer" Implementing34["OverlayPopupHost"]-.->Type click Implementing34 "/api/Avalonia.Controls.Primitives/OverlayPopupHost" Implementing35["DataGridColumnHeader"]-.->Type click Implementing35 "/api/Avalonia.Controls/DataGridColumnHeader" Implementing36["Carousel"]-.->Type click Implementing36 "/api/Avalonia.Controls/Carousel" Implementing37["HeaderedSelectingItemsControl"]-.->Type click Implementing37 "/api/Avalonia.Controls.Primitives/HeaderedSelectingItemsControl" Implementing38["Track"]-.->Type click Implementing38 "/api/Avalonia.Controls.Primitives/Track" Implementing39["Rectangle"]-.->Type click Implementing39 "/api/Avalonia.Controls.Shapes/Rectangle" Implementing40["DataGridRowHeader"]-.->Type click Implementing40 "/api/Avalonia.Controls.Primitives/DataGridRowHeader" Implementing41["DropDownItem"]-.->Type click Implementing41 "/api/Avalonia.Controls/DropDownItem" Implementing42["Line"]-.->Type click Implementing42 "/api/Avalonia.Controls.Shapes/Line" Implementing43["ViewModelViewHost"]-.->Type click Implementing43 "/api/Avalonia.ReactiveUI/ViewModelViewHost" Implementing44["TitleBar"]-.->Type click Implementing44 "/api/Avalonia.Controls.Chrome/TitleBar" Implementing45["ScrollViewer"]-.->Type click Implementing45 "/api/Avalonia.Controls/ScrollViewer" Implementing46["ReactiveWindow<TViewModel>"]-.->Type click Implementing46 "/api/Avalonia.ReactiveUI/ReactiveWindow_1" Implementing47["SplitView"]-.->Type click Implementing47 "/api/Avalonia.Controls/SplitView" Implementing48["GridSplitter"]-.->Type click Implementing48 "/api/Avalonia.Controls/GridSplitter" Implementing49["ButtonSpinner"]-.->Type click Implementing49 "/api/Avalonia.Controls/ButtonSpinner" Implementing50["Layoutable"]-.->Type click Implementing50 "/api/Avalonia.Layout/Layoutable" Implementing51["Polygon"]-.->Type click Implementing51 "/api/Avalonia.Controls.Shapes/Polygon" Implementing52["TabStrip"]-.->Type click Implementing52 "/api/Avalonia.Controls.Primitives/TabStrip" Implementing53["Calendar"]-.->Type click Implementing53 "/api/Avalonia.Controls/Calendar" Implementing54["IVirtualizingPanel"]-.->Type click Implementing54 "/api/Avalonia.Controls/IVirtualizingPanel" Implementing55["IPresenter"]-.->Type click Implementing55 "/api/Avalonia.Controls.Presenters/IPresenter" Implementing56["Interactive"]-.->Type click Implementing56 "/api/Avalonia.Interactivity/Interactive" Implementing57["Expander"]-.->Type click Implementing57 "/api/Avalonia.Controls/Expander" Implementing58["TabControl"]-.->Type click Implementing58 "/api/Avalonia.Controls/TabControl" Implementing59["NativeControlHost"]-.->Type click Implementing59 "/api/Avalonia.Controls/NativeControlHost" Implementing60["CarouselPresenter"]-.->Type click Implementing60 "/api/Avalonia.Controls.Presenters/CarouselPresenter" Implementing61["UniformGrid"]-.->Type click Implementing61 "/api/Avalonia.Controls.Primitives/UniformGrid" Implementing62["RepeatButton"]-.->Type click Implementing62 "/api/Avalonia.Controls/RepeatButton" Implementing63["ContentControl"]-.->Type click Implementing63 "/api/Avalonia.Controls/ContentControl" Implementing64["LightDismissOverlayLayer"]-.->Type click Implementing64 "/api/Avalonia.Controls.Primitives/LightDismissOverlayLayer" Implementing65["Popup"]-.->Type click Implementing65 "/api/Avalonia.Controls.Primitives/Popup" Implementing66["ItemsControl"]-.->Type click Implementing66 "/api/Avalonia.Controls/ItemsControl" Implementing67["DataGridRowGroupHeader"]-.->Type click Implementing67 "/api/Avalonia.Controls/DataGridRowGroupHeader" Implementing68["DataGridRowsPresenter"]-.->Type click Implementing68 "/api/Avalonia.Controls.Primitives/DataGridRowsPresenter" Implementing69["IItemsPresenter"]-.->Type click Implementing69 "/api/Avalonia.Controls.Presenters/IItemsPresenter" Implementing70["ExperimentalAcrylicBorder"]-.->Type click Implementing70 "/api/Avalonia.Controls/ExperimentalAcrylicBorder" Implementing71["Button"]-.->Type click Implementing71 "/api/Avalonia.Controls/Button" Implementing72["DrawingPresenter"]-.->Type click Implementing72 "/api/Avalonia.Controls/DrawingPresenter" Implementing73["Label"]-.->Type click Implementing73 "/api/Avalonia.Controls/Label" Implementing74["TimePickerPresenter"]-.->Type click Implementing74 "/api/Avalonia.Controls/TimePickerPresenter" Implementing75["NotificationCard"]-.->Type click Implementing75 "/api/Avalonia.Controls.Notifications/NotificationCard" Implementing76["AutoCompleteBox"]-.->Type click Implementing76 "/api/Avalonia.Controls/AutoCompleteBox" Implementing77["AutoCompleteBox.BindingEvaluator<T>"]-.->Type click Implementing77 "/api/Avalonia.Controls/BindingEvaluator_1" Implementing78["InputElement"]-.->Type click Implementing78 "/api/Avalonia.Input/InputElement" Implementing79["Panel"]-.->Type click Implementing79 "/api/Avalonia.Controls/Panel" Implementing80["RelativePanel"]-.->Type click Implementing80 "/api/Avalonia.Controls/RelativePanel" Implementing81["ItemsRepeater"]-.->Type click Implementing81 "/api/Avalonia.Controls/ItemsRepeater" Implementing82["DockPanel"]-.->Type click Implementing82 "/api/Avalonia.Controls/DockPanel" Implementing83["CalendarButton"]-.->Type click Implementing83 "/api/Avalonia.Controls.Primitives/CalendarButton" Implementing84["Canvas"]-.->Type click Implementing84 "/api/Avalonia.Controls/Canvas" Implementing85["TabItem"]-.->Type click Implementing85 "/api/Avalonia.Controls/TabItem" Implementing86["MenuFlyoutPresenter"]-.->Type click Implementing86 "/api/Avalonia.Controls/MenuFlyoutPresenter" Implementing87["ItemsPresenter"]-.->Type click Implementing87 "/api/Avalonia.Controls.Presenters/ItemsPresenter" Implementing88["NativeMenuBar"]-.->Type click Implementing88 "/api/Avalonia.Controls/NativeMenuBar" Implementing89["ToggleSwitch"]-.->Type click Implementing89 "/api/Avalonia.Controls/ToggleSwitch" Implementing90["EmbeddableControlRoot"]-.->Type click Implementing90 "/api/Avalonia.Controls.Embedding/EmbeddableControlRoot" Implementing91["HeaderedContentControl"]-.->Type click Implementing91 "/api/Avalonia.Controls.Primitives/HeaderedContentControl" Implementing92["TemplatedControl"]-.->Type click Implementing92 "/api/Avalonia.Controls.Primitives/TemplatedControl" Implementing93["PickerPresenterBase"]-.->Type click Implementing93 "/api/Avalonia.Controls.Primitives/PickerPresenterBase" Implementing94["DateTimePickerPanel"]-.->Type click Implementing94 "/api/Avalonia.Controls.Primitives/DateTimePickerPanel" Implementing95["Thumb"]-.->Type click Implementing95 "/api/Avalonia.Controls.Primitives/Thumb" Implementing96["IContentControl"]-.->Type click Implementing96 "/api/Avalonia.Controls/IContentControl" Implementing97["TabStripItem"]-.->Type click Implementing97 "/api/Avalonia.Controls.Primitives/TabStripItem" Implementing98["ToolTip"]-.->Type click Implementing98 "/api/Avalonia.Controls/ToolTip" Implementing99["VisualLayerManager"]-.->Type click Implementing99 "/api/Avalonia.Controls.Primitives/VisualLayerManager" Implementing100["CalendarItem"]-.->Type click Implementing100 "/api/Avalonia.Controls.Primitives/CalendarItem" Implementing101["ScrollBar"]-.->Type click Implementing101 "/api/Avalonia.Controls.Primitives/ScrollBar" Implementing102["MenuBase"]-.->Type click Implementing102 "/api/Avalonia.Controls/MenuBase" Implementing103["Visual"]-.->Type click Implementing103 "/api/Avalonia/Visual" Implementing104["DataGrid"]-.->Type click Implementing104 "/api/Avalonia.Controls/DataGrid" Implementing105["Spinner"]-.->Type click Implementing105 "/api/Avalonia.Controls/Spinner" Implementing106["IContentPresenter"]-.->Type click Implementing106 "/api/Avalonia.Controls.Presenters/IContentPresenter" Implementing107["DataGridColumnHeadersPresenter"]-.->Type click Implementing107 "/api/Avalonia.Controls.Primitives/DataGridColumnHeadersPresenter" Implementing108["UserControl"]-.->Type click Implementing108 "/api/Avalonia.Controls/UserControl" Implementing109["RadioButton"]-.->Type click Implementing109 "/api/Avalonia.Controls/RadioButton" Implementing110["CaptionButtons"]-.->Type click Implementing110 "/api/Avalonia.Controls.Chrome/CaptionButtons" Implementing111["DatePickerPresenter"]-.->Type click Implementing111 "/api/Avalonia.Controls/DatePickerPresenter" Implementing112["ChromeOverlayLayer"]-.->Type click Implementing112 "/api/Avalonia.Controls.Primitives/ChromeOverlayLayer" Implementing113["DatePicker"]-.->Type click Implementing113 "/api/Avalonia.Controls/DatePicker" Implementing114["IStyledElement"]-.->Type click Implementing114 "/api/Avalonia/IStyledElement" Implementing115["RoutedViewHost"]-.->Type click Implementing115 "/api/Avalonia.ReactiveUI/RoutedViewHost" Implementing116["AccessText"]-.->Type click Implementing116 "/api/Avalonia.Controls.Primitives/AccessText" Implementing117["PopupRoot"]-.->Type click Implementing117 "/api/Avalonia.Controls.Primitives/PopupRoot" Implementing118["ReversibleStackPanel"]-.->Type click Implementing118 "/api/Avalonia.Controls/ReversibleStackPanel" Implementing119["Decorator"]-.->Type click Implementing119 "/api/Avalonia.Controls/Decorator" Implementing120["CalendarDayButton"]-.->Type click Implementing120 "/api/Avalonia.Controls.Primitives/CalendarDayButton" Implementing121["AdornerLayer"]-.->Type click Implementing121 "/api/Avalonia.Controls.Primitives/AdornerLayer" Implementing122["ToggleButton"]-.->Type click Implementing122 "/api/Avalonia.Controls.Primitives/ToggleButton" Implementing123["TickBar"]-.->Type click Implementing123 "/api/Avalonia.Controls/TickBar" Implementing124["LayoutTransformControl"]-.->Type click Implementing124 "/api/Avalonia.Controls/LayoutTransformControl" Implementing125["TextBox"]-.->Type click Implementing125 "/api/Avalonia.Controls/TextBox" Implementing126["ComboBoxItem"]-.->Type click Implementing126 "/api/Avalonia.Controls/ComboBoxItem" Implementing127["CalendarDatePicker"]-.->Type click Implementing127 "/api/Avalonia.Controls/CalendarDatePicker" Implementing128["SelectingItemsControl"]-.->Type click Implementing128 "/api/Avalonia.Controls.Primitives/SelectingItemsControl" Implementing129["ItemsPresenterBase"]-.->Type click Implementing129 "/api/Avalonia.Controls.Presenters/ItemsPresenterBase" Implementing130["TextBlock"]-.->Type click Implementing130 "/api/Avalonia.Controls/TextBlock" Implementing131["IControl"]-.->Type click Implementing131 "/api/Avalonia.Controls/IControl" Implementing132["Window"]-.->Type click Implementing132 "/api/Avalonia.Controls/Window" Implementing133["WrapPanel"]-.->Type click Implementing133 "/api/Avalonia.Controls/WrapPanel" Implementing134["PathIcon"]-.->Type click Implementing134 "/api/Avalonia.Controls/PathIcon" Implementing135["StyledElement"]-.->Type click Implementing135 "/api/Avalonia/StyledElement" Implementing136["HeaderedItemsControl"]-.->Type click Implementing136 "/api/Avalonia.Controls.Primitives/HeaderedItemsControl" Implementing137["IMenuElement"]-.->Type click Implementing137 "/api/Avalonia.Controls/IMenuElement" Implementing138["DataGridDetailsPresenter"]-.->Type click Implementing138 "/api/Avalonia.Controls.Primitives/DataGridDetailsPresenter" Implementing139["WindowBase"]-.->Type click Implementing139 "/api/Avalonia.Controls/WindowBase" Implementing140["Grid"]-.->Type click Implementing140 "/api/Avalonia.Controls/Grid" Implementing141["DataGridCell"]-.->Type click Implementing141 "/api/Avalonia.Controls/DataGridCell" Implementing142["ListBoxItem"]-.->Type click Implementing142 "/api/Avalonia.Controls/ListBoxItem" Implementing143["Ellipse"]-.->Type click Implementing143 "/api/Avalonia.Controls.Shapes/Ellipse" Implementing144["Border"]-.->Type click Implementing144 "/api/Avalonia.Controls/Border" Implementing145["StackPanel"]-.->Type click Implementing145 "/api/Avalonia.Controls/StackPanel" Implementing146["Menu"]-.->Type click Implementing146 "/api/Avalonia.Controls/Menu" Implementing147["VirtualizingStackPanel"]-.->Type click Implementing147 "/api/Avalonia.Controls/VirtualizingStackPanel" Implementing148["WindowNotificationManager"]-.->Type click Implementing148 "/api/Avalonia.Controls.Notifications/WindowNotificationManager" Implementing149["Image"]-.->Type click Implementing149 "/api/Avalonia.Controls/Image" Implementing150["IMenuItem"]-.->Type click Implementing150 "/api/Avalonia.Controls/IMenuItem" Implementing151["FlyoutPresenter"]-.->Type click Implementing151 "/api/Avalonia.Controls/FlyoutPresenter" Implementing152["IMenu"]-.->Type click Implementing152 "/api/Avalonia.Controls/IMenu" Implementing153["MenuItem"]-.->Type click Implementing153 "/api/Avalonia.Controls/MenuItem"

Syntax

public interface IStyleable : IAvaloniaObject, INamed

Properties

Name Value Summary
Classes IAvaloniaReadOnlyList<string>
Gets the list of classes for the control.
StyleKey Type
Gets the type by which the control is styled.
TemplatedParent ITemplatedControl?
Gets the template parent of this element if the control comes from a template.

Methods

Name Value Summary
DetachStyles() void
Detaches all styles applied to the element.
DetachStyles(IReadOnlyList<IStyle>) void
Detaches a collection of styles, if applied to the element.
InvalidateStyles() void
Detaches all styles from the element and queues a restyle.
StyleApplied(IStyleInstance) void
Notifies the element that a style has been applied.

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.
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.
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.
GetSubject(AvaloniaProperty, BindingPriority) ISubject<object>
Gets a subject for a AvaloniaProperty.
GetSubject<T>(AvaloniaProperty<T>, BindingPriority) ISubject<T>
Gets a subject for a AvaloniaProperty.