IControl Interface

Summary

Interface for Avalonia controls.
Namespace
Avalonia.Controls
Interfaces
Implementing Types
graph TD Interface0["IDataTemplateHost"]-.->Type click Interface0 "/api/Avalonia.Controls.Templates/IDataTemplateHost" Interface1["ILayoutable"]-.->Type click Interface1 "/api/Avalonia.Layout/ILayoutable" Interface2["IInputElement"]-.->Type click Interface2 "/api/Avalonia.Input/IInputElement" Interface3["IInteractive"]-.->Type click Interface3 "/api/Avalonia.Interactivity/IInteractive" Interface4["IVisual"]-.->Type click Interface4 "/api/Avalonia.VisualTree/IVisual" Interface5["IStyledElement"]-.->Type click Interface5 "/api/Avalonia/IStyledElement" Interface6["IStyleable"]-.->Type click Interface6 "/api/Avalonia.Styling/IStyleable" Interface7["IAvaloniaObject"]-.->Type click Interface7 "/api/Avalonia/IAvaloniaObject" Interface8["INamed"]-.->Type click Interface8 "/api/Avalonia/INamed" Interface9["IStyleHost"]-.->Type click Interface9 "/api/Avalonia.Styling/IStyleHost" Interface10["ILogical"]-.->Type click Interface10 "/api/Avalonia.LogicalTree/ILogical" Interface11["IResourceNode"]-.->Type click Interface11 "/api/Avalonia.Controls/IResourceNode" Interface12["IResourceProvider"]-.->Type click Interface12 "/api/Avalonia.Controls/IResourceProvider" Type["IControl"] class Type type-node Type-.->Implementing0["ReactiveWindow<TViewModel>"] click Implementing0 "/api/Avalonia/ReactiveWindow_1" Type-.->Implementing1["TabStrip"] click Implementing1 "/api/Avalonia.Controls.Primitives/TabStrip" Type-.->Implementing2["RangeBase"] click Implementing2 "/api/Avalonia.Controls.Primitives/RangeBase" Type-.->Implementing3["Panel"] click Implementing3 "/api/Avalonia.Controls/Panel" Type-.->Implementing4["ReactiveUserControl<TViewModel>"] click Implementing4 "/api/Avalonia/ReactiveUserControl_1" Type-.->Implementing5["IContentControl"] click Implementing5 "/api/Avalonia.Controls/IContentControl" Type-.->Implementing6["ItemsPresenter"] click Implementing6 "/api/Avalonia.Controls.Presenters/ItemsPresenter" Type-.->Implementing7["DataGridCellsPresenter"] click Implementing7 "/api/Avalonia.Controls.Primitives/DataGridCellsPresenter" Type-.->Implementing8["UserControl"] click Implementing8 "/api/Avalonia.Controls/UserControl" Type-.->Implementing9["RemoteWidget"] click Implementing9 "/api/Avalonia.Controls.Remote/RemoteWidget" Type-.->Implementing10["Border"] click Implementing10 "/api/Avalonia.Controls/Border" Type-.->Implementing11["DevTools"] click Implementing11 "/api/Avalonia.Diagnostics/DevTools" Type-.->Implementing12["TreeView"] click Implementing12 "/api/Avalonia.Controls/TreeView" Type-.->Implementing13["TabStripItem"] click Implementing13 "/api/Avalonia.Controls.Primitives/TabStripItem" Type-.->Implementing14["ProgressBar"] click Implementing14 "/api/Avalonia.Controls/ProgressBar" Type-.->Implementing15["DataGridRowsPresenter"] click Implementing15 "/api/Avalonia.Controls.Primitives/DataGridRowsPresenter" Type-.->Implementing16["ToggleButton"] click Implementing16 "/api/Avalonia.Controls.Primitives/ToggleButton" Type-.->Implementing17["IPresenter"] click Implementing17 "/api/Avalonia.Controls.Presenters/IPresenter" Type-.->Implementing18["DataGridRowGroupHeader"] click Implementing18 "/api/Avalonia.Controls/DataGridRowGroupHeader" Type-.->Implementing19["MenuItem"] click Implementing19 "/api/Avalonia.Controls/MenuItem" Type-.->Implementing20["WindowBase"] click Implementing20 "/api/Avalonia.Controls/WindowBase" Type-.->Implementing21["IPanel"] click Implementing21 "/api/Avalonia.Controls/IPanel" Type-.->Implementing22["Canvas"] click Implementing22 "/api/Avalonia.Controls/Canvas" Type-.->Implementing23["ScrollBar"] click Implementing23 "/api/Avalonia.Controls.Primitives/ScrollBar" Type-.->Implementing24["CalendarDayButton"] click Implementing24 "/api/Avalonia.Controls.Primitives/CalendarDayButton" Type-.->Implementing25["ContentPresenter"] click Implementing25 "/api/Avalonia.Controls.Presenters/ContentPresenter" Type-.->Implementing26["Separator"] click Implementing26 "/api/Avalonia.Controls/Separator" Type-.->Implementing27["ContentControl"] click Implementing27 "/api/Avalonia.Controls/ContentControl" Type-.->Implementing28["Track"] click Implementing28 "/api/Avalonia.Controls.Primitives/Track" Type-.->Implementing29["TextBox"] click Implementing29 "/api/Avalonia.Controls/TextBox" Type-.->Implementing30["DropDown"] click Implementing30 "/api/Avalonia.Controls/DropDown" Type-.->Implementing31["DataValidationErrors"] click Implementing31 "/api/Avalonia.Controls/DataValidationErrors" Type-.->Implementing32["SimpleGrid"] click Implementing32 "/api/Avalonia.Diagnostics.Views/SimpleGrid" Type-.->Implementing33["Carousel"] click Implementing33 "/api/Avalonia.Controls/Carousel" Type-.->Implementing34["PopupRoot"] click Implementing34 "/api/Avalonia.Controls.Primitives/PopupRoot" Type-.->Implementing35["Decorator"] click Implementing35 "/api/Avalonia.Controls/Decorator" Type-.->Implementing36["DataGridDetailsPresenter"] click Implementing36 "/api/Avalonia.Controls.Primitives/DataGridDetailsPresenter" Type-.->Implementing37["IContentPresenter"] click Implementing37 "/api/Avalonia.Controls.Presenters/IContentPresenter" Type-.->Implementing38["Thumb"] click Implementing38 "/api/Avalonia.Controls.Primitives/Thumb" Type-.->Implementing39["EventsView"] click Implementing39 "/api/Avalonia.Diagnostics.Views/EventsView" Type-.->Implementing40["NumericUpDown"] click Implementing40 "/api/Avalonia.Controls/NumericUpDown" Type-.->Implementing41["DatePicker"] click Implementing41 "/api/Avalonia.Controls/DatePicker" Type-.->Implementing42["TextBlock"] click Implementing42 "/api/Avalonia.Controls/TextBlock" Type-.->Implementing43["Grid"] click Implementing43 "/api/Avalonia.Controls/Grid" Type-.->Implementing44["ComboBoxItem"] click Implementing44 "/api/Avalonia.Controls/ComboBoxItem" Type-.->Implementing45["Ellipse"] click Implementing45 "/api/Avalonia.Controls.Shapes/Ellipse" Type-.->Implementing46["ContextMenu"] click Implementing46 "/api/Avalonia.Controls/ContextMenu" Type-.->Implementing47["ScrollContentPresenter"] click Implementing47 "/api/Avalonia.Controls.Presenters/ScrollContentPresenter" Type-.->Implementing48["DockPanel"] click Implementing48 "/api/Avalonia.Controls/DockPanel" Type-.->Implementing49["TabControl"] click Implementing49 "/api/Avalonia.Controls/TabControl" Type-.->Implementing50["VirtualizingStackPanel"] click Implementing50 "/api/Avalonia.Controls/VirtualizingStackPanel" Type-.->Implementing51["WrapPanel"] click Implementing51 "/api/Avalonia.Controls/WrapPanel" Type-.->Implementing52["StackPanel"] click Implementing52 "/api/Avalonia.Controls/StackPanel" Type-.->Implementing53["HeaderedItemsControl"] click Implementing53 "/api/Avalonia.Controls.Primitives/HeaderedItemsControl" Type-.->Implementing54["CheckBox"] click Implementing54 "/api/Avalonia.Controls/CheckBox" Type-.->Implementing55["ListBoxItem"] click Implementing55 "/api/Avalonia.Controls/ListBoxItem" Type-.->Implementing56["TreePageView"] click Implementing56 "/api/Avalonia.Diagnostics.Views/TreePageView" Type-.->Implementing57["Menu"] click Implementing57 "/api/Avalonia.Controls/Menu" Type-.->Implementing58["RepeatButton"] click Implementing58 "/api/Avalonia.Controls/RepeatButton" Type-.->Implementing59["GridSplitter"] click Implementing59 "/api/Avalonia.Controls/GridSplitter" Type-.->Implementing60["AdornerDecorator"] click Implementing60 "/api/Avalonia.Controls.Primitives/AdornerDecorator" Type-.->Implementing61["ToolTip"] click Implementing61 "/api/Avalonia.Controls/ToolTip" Type-.->Implementing62["RoutedViewHost"] click Implementing62 "/api/Avalonia/RoutedViewHost" Type-.->Implementing63["Polygon"] click Implementing63 "/api/Avalonia.Controls.Shapes/Polygon" Type-.->Implementing64["LayoutTransformControl"] click Implementing64 "/api/Avalonia.Controls/LayoutTransformControl" Type-.->Implementing65["Expander"] click Implementing65 "/api/Avalonia.Controls/Expander" Type-.->Implementing66["SelectingItemsControl"] click Implementing66 "/api/Avalonia.Controls.Primitives/SelectingItemsControl" Type-.->Implementing67["MenuBase"] click Implementing67 "/api/Avalonia.Controls/MenuBase" Type-.->Implementing68["Viewbox"] click Implementing68 "/api/Avalonia.Controls/Viewbox" Type-.->Implementing69["TreeViewItem"] click Implementing69 "/api/Avalonia.Controls/TreeViewItem" Type-.->Implementing70["ItemsPresenterBase"] click Implementing70 "/api/Avalonia.Controls.Presenters/ItemsPresenterBase" Type-.->Implementing71["AutoCompleteBox"] click Implementing71 "/api/Avalonia.Controls/AutoCompleteBox" Type-.->Implementing72["Path"] click Implementing72 "/api/Avalonia.Controls.Shapes/Path" Type-.->Implementing73["DataGrid"] click Implementing73 "/api/Avalonia.Controls/DataGrid" Type-.->Implementing74["ItemsControl"] click Implementing74 "/api/Avalonia.Controls/ItemsControl" Type-.->Implementing75["Button"] click Implementing75 "/api/Avalonia.Controls/Button" Type-.->Implementing76["TextPresenter"] click Implementing76 "/api/Avalonia.Controls.Presenters/TextPresenter" Type-.->Implementing77["AutoCompleteBox.BindingEvaluator<T>"] click Implementing77 "/api/Avalonia.Controls/BindingEvaluator_1" Type-.->Implementing78["Window"] click Implementing78 "/api/Avalonia.Controls/Window" Type-.->Implementing79["ButtonSpinner"] click Implementing79 "/api/Avalonia.Controls/ButtonSpinner" Type-.->Implementing80["CalendarItem"] click Implementing80 "/api/Avalonia.Controls.Primitives/CalendarItem" Type-.->Implementing81["IMenu"] click Implementing81 "/api/Avalonia.Controls/IMenu" Type-.->Implementing82["DropDownItem"] click Implementing82 "/api/Avalonia.Controls/DropDownItem" Type-.->Implementing83["AccessText"] click Implementing83 "/api/Avalonia.Controls.Primitives/AccessText" Type-.->Implementing84["IMenuElement"] click Implementing84 "/api/Avalonia.Controls/IMenuElement" Type-.->Implementing85["UniformGrid"] click Implementing85 "/api/Avalonia.Controls.Primitives/UniformGrid" Type-.->Implementing86["CalendarButton"] click Implementing86 "/api/Avalonia.Controls.Primitives/CalendarButton" Type-.->Implementing87["ScrollViewer"] click Implementing87 "/api/Avalonia.Controls/ScrollViewer" Type-.->Implementing88["TopLevel"] click Implementing88 "/api/Avalonia.Controls/TopLevel" Type-.->Implementing89["DrawingPresenter"] click Implementing89 "/api/Avalonia.Controls/DrawingPresenter" Type-.->Implementing90["AdornerLayer"] click Implementing90 "/api/Avalonia.Controls.Primitives/AdornerLayer" Type-.->Implementing91["Spinner"] click Implementing91 "/api/Avalonia.Controls/Spinner" Type-.->Implementing92["DataGridRowHeader"] click Implementing92 "/api/Avalonia.Controls.Primitives/DataGridRowHeader" Type-.->Implementing93["HeaderedContentControl"] click Implementing93 "/api/Avalonia.Controls.Primitives/HeaderedContentControl" Type-.->Implementing94["Slider"] click Implementing94 "/api/Avalonia.Controls/Slider" Type-.->Implementing95["Calendar"] click Implementing95 "/api/Avalonia.Controls/Calendar" Type-.->Implementing96["DataGridColumnHeader"] click Implementing96 "/api/Avalonia.Controls/DataGridColumnHeader" Type-.->Implementing97["EmbeddableControlRoot"] click Implementing97 "/api/Avalonia.Controls.Embedding/EmbeddableControlRoot" Type-.->Implementing98["ListBox"] click Implementing98 "/api/Avalonia.Controls/ListBox" Type-.->Implementing99["DataGridRow"] click Implementing99 "/api/Avalonia.Controls/DataGridRow" Type-.->Implementing100["Polyline"] click Implementing100 "/api/Avalonia.Controls.Shapes/Polyline" Type-.->Implementing101["Rectangle"] click Implementing101 "/api/Avalonia.Controls.Shapes/Rectangle" Type-.->Implementing102["DataGridCell"] click Implementing102 "/api/Avalonia.Controls/DataGridCell" Type-.->Implementing103["Line"] click Implementing103 "/api/Avalonia.Controls.Shapes/Line" Type-.->Implementing104["IVirtualizingPanel"] click Implementing104 "/api/Avalonia.Controls/IVirtualizingPanel" Type-.->Implementing105["DataGridFrozenGrid"] click Implementing105 "/api/Avalonia.Controls.Primitives/DataGridFrozenGrid" Type-.->Implementing106["Shape"] click Implementing106 "/api/Avalonia.Controls.Shapes/Shape" Type-.->Implementing107["Image"] click Implementing107 "/api/Avalonia.Controls/Image" Type-.->Implementing108["Control"] click Implementing108 "/api/Avalonia.Controls/Control" Type-.->Implementing109["CarouselPresenter"] click Implementing109 "/api/Avalonia.Controls.Presenters/CarouselPresenter" Type-.->Implementing110["TabItem"] click Implementing110 "/api/Avalonia.Controls/TabItem" Type-.->Implementing111["HeaderedSelectingItemsControl"] click Implementing111 "/api/Avalonia.Controls.Primitives/HeaderedSelectingItemsControl" Type-.->Implementing112["ComboBox"] click Implementing112 "/api/Avalonia.Controls/ComboBox" Type-.->Implementing113["IItemsPresenter"] click Implementing113 "/api/Avalonia.Controls.Presenters/IItemsPresenter" Type-.->Implementing114["DataGridColumnHeadersPresenter"] click Implementing114 "/api/Avalonia.Controls.Primitives/DataGridColumnHeadersPresenter" Type-.->Implementing115["IMenuItem"] click Implementing115 "/api/Avalonia.Controls/IMenuItem" Type-.->Implementing116["TemplatedControl"] click Implementing116 "/api/Avalonia.Controls.Primitives/TemplatedControl" Type-.->Implementing117["Popup"] click Implementing117 "/api/Avalonia.Controls.Primitives/Popup" Type-.->Implementing118["RadioButton"] click Implementing118 "/api/Avalonia.Controls/RadioButton"

Syntax

public interface IControl : IDataTemplateHost, ILayoutable, IInputElement, IInteractive, IVisual, 
    IStyledElement, IStyleable, IAvaloniaObject, INamed, IStyleHost, ILogical, IResourceNode, 
    IResourceProvider

Properties

Name Value Summary
Parent IControl

Extension Methods

Name Value Summary
Bind(AvaloniaProperty, IBinding, object) IDisposable
Binds a property on an IAvaloniaObject to an IBinding.
BringIntoView() void
Tries to bring the control into view.
BringIntoView(Rect) void
Tries to bring the control into view.
CalculateDistanceFromAncestor(IVisual) int
Calculates the distance from a visual's IRenderRoot.
FindCommonVisualAncestor(IVisual) IVisual
Tries to get the first common ancestor of two visuals.
FindControl<T>(string) T
Finds the named control in the scope of the specified control.
FindDataTemplate(object, IDataTemplate) IDataTemplate
Find a data template that matches a piece of data.
FindNameScope() INameScope
FindResource(string) object
Finds the specified resource by searching up the logical tree and then global styles.
GetInputElementsAt(Point) IEnumerable<IInputElement>
Returns the active input elements at a point on an IInputElement.
GetLogicalAncestors() IEnumerable<ILogical>
GetLogicalChildren() IEnumerable<ILogical>
GetLogicalDescendants() IEnumerable<ILogical>
GetLogicalParent() ILogical
GetLogicalParent<T>() T
GetLogicalSiblings() IEnumerable<ILogical>
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(string) IObservable<object>
GetSelfAndLogicalAncestors() IEnumerable<ILogical>
GetSelfAndLogicalDescendants() IEnumerable<ILogical>
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.
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.
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.
InputHitTest(Point) IInputElement
Returns the topmost active input element at a point on an IInputElement.
IsLogicalParentOf(ILogical) bool
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.
TranslatePoint(Point, IVisual) Point
Translates a point relative to this visual to coordinates that are relative to the specified visual. The visual and relativeTo should be descendants of the same root window
TryFindResource(string, object) bool
Tries to the specified resource by searching up the logical tree and then global styles.