IControl Interface

Summary

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

Syntax

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

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.
Find<T>(string) T
Finds a named element in an INameScope.
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(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.
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(object) 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.
HitTestCustom(Point) bool
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.
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.