12 implementations of IVisualTreeElement
Microsoft.Maui.Controls (12)
Application\Application.cs (1)
18 public partial class Application : Element, IResourcesProvider, IApplicationController, IElementConfiguration<Application>, IVisualTreeElement, IApplication
Cells\Cell.cs (1)
14 public abstract class Cell : Element, ICellController, IFlowDirectionController, IPropertyPropagationController, IVisualController, IWindowController, IVisualTreeElement
Element\Element.cs (1)
49 public abstract partial class Element : BindableObject, IElementDefinition, INameScope, IElementController, IVisualTreeElement, Maui.IElement, IEffectControlProvider, IToolTipElement, IContextFlyoutElement, IControlsElement, IHandlerDisconnectPolicies
Layout\Layout.cs (1)
17 public abstract partial class Layout : View, Maui.ILayout, IList<IView>, IBindableLayout, IPaddingElement, IVisualTreeElement, ISafeAreaView, IInputTransparentContainerElement
LegacyLayouts\Layout.cs (1)
93 public abstract class Layout : View, ILayout, ILayoutController, IPaddingElement, IView, IVisualTreeElement, IInputTransparentContainerElement
ListView\ListView.cs (1)
19 public class ListView : ItemsView<Cell>, IListViewController, IElementConfiguration<ListView>, IVisualTreeElement
Shell\ShellContent.cs (1)
15 public class ShellContent : BaseShellItem, IShellContentController, IVisualTreeElement
Shell\ShellItem.cs (1)
54 public class ShellItem : ShellGroupItem, IShellItemController, IElementConfiguration<ShellItem>, IPropertyPropagationController, IVisualTreeElement
Shell\ShellSection.cs (1)
25 public partial class ShellSection : ShellGroupItem, IShellSectionController, IPropertyPropagationController, IVisualTreeElement, IStackNavigation
SwipeView\SwipeView.cs (1)
12 public partial class SwipeView : ContentView, IElementConfiguration<SwipeView>, ISwipeViewController, ISwipeView, IVisualTreeElement
TableView\TableSection.cs (1)
13 public abstract class TableSectionBase<T> : TableSectionBase, IList<T>, IVisualTreeElement, INotifyCollectionChanged where T : BindableObject
TableView\TableView.cs (1)
16 public class TableView : View, ITableViewController, IElementConfiguration<TableView>, IVisualTreeElement
119 references to IVisualTreeElement
Microsoft.Maui (74)
Core\Extensions\VisualTreeElementExtensions.cs (45)
41 /// <param name="element"><see cref="IVisualTreeElement"/>.</param> 43 public static IWindow? GetVisualElementWindow(this IVisualTreeElement element) 48 var parent = element.GetVisualParent(); 58 /// <param name="visualElement"><see cref="IVisualTreeElement"/> to scan.</param> 60 public static IReadOnlyList<IVisualTreeElement> GetVisualTreeDescendants(this IVisualTreeElement visualElement) => 63 static List<IVisualTreeElement> GetVisualTreeDescendantsInternal(this IVisualTreeElement visualElement, List<IVisualTreeElement>? elements = null) 66 elements = new List<IVisualTreeElement>(); 70 foreach (var children in visualElement.GetVisualChildren()) 79 /// <param name="visualElement"><see cref="IVisualTreeElement"/> to scan.</param> 85 public static IReadOnlyList<IVisualTreeElement> GetVisualTreeElements(this IVisualTreeElement visualElement, double x1, double y1, double x2, double y2) => 91 /// <param name="visualElement"><see cref="IVisualTreeElement"/> to scan.</param> 94 public static IReadOnlyList<IVisualTreeElement> GetVisualTreeElements(this IVisualTreeElement visualElement, Rect rectangle) 109 /// <param name="visualElement"><see cref="IVisualTreeElement"/> to scan.</param> 113 public static IReadOnlyList<IVisualTreeElement> GetVisualTreeElements(this IVisualTreeElement visualElement, double x, double y) => 119 /// <param name="visualElement"><see cref="IVisualTreeElement"/> to scan.</param> 122 public static IReadOnlyList<IVisualTreeElement> GetVisualTreeElements(this IVisualTreeElement visualElement, Point point) 179 /// Locates the <see cref="IVisualTreeElement"/> that's a best fit for the given platform view. 182 /// If an exact <see cref="IVisualTreeElement"/> counterpart isn't found, then the 183 /// first <see cref="IVisualTreeElement"/> within the ancestors of the given platform view will 190 internal static IVisualTreeElement? GetVisualTreeElement( 195 /// Locates the <see cref="IVisualTreeElement"/> that's a best fit for the given platform view. 198 /// If an exact <see cref="IVisualTreeElement"/> counterpart isn't found, then the 199 /// first <see cref="IVisualTreeElement"/> within the ancestors of the given platform view will 209 internal static IVisualTreeElement? GetVisualTreeElement( 213 IVisualTreeElement? foundParent = null; 244 var returnValue = FindNextChild(foundParent, platformView, platformParentPath); 257 static IVisualTreeElement? FindNextChild( 258 IVisualTreeElement parent, 263 IVisualTreeElement? childMatch = null; 264 foreach (var child in children) 266 if (child is not IVisualTreeElement childVTE) 301 internal static bool IsThisMyPlatformView(this IVisualTreeElement? visualTreeElement, PlatformView platformView) 309 static List<IVisualTreeElement> GetVisualTreeElementsInternal(IVisualTreeElement visualElement, Predicate<Rect> intersectElementBounds) 311 var elements = new List<IVisualTreeElement>(); 318 static void Impl(IVisualTreeElement visualElement, Predicate<Rect> intersectElementBounds, List<IVisualTreeElement> elements) 328 foreach (var child in children)
Core\IVisualDiagnosticsOverlay.cs (6)
36 /// <param name="visualElement"><see cref="IVisualTreeElement"/>.</param> 38 bool AddAdorner(IVisualTreeElement visualElement, bool scrollToElement); 52 /// Removes all adorners containing the inner <see cref="IVisualTreeElement"/>. 54 /// <param name="visualElement"><see cref="IVisualTreeElement"/>.</param> 55 bool RemoveAdorners(IVisualTreeElement visualElement); 78 void ScrollToView(IVisualTreeElement element);
Core\IVisualTreeElement.cs (2)
12 IReadOnlyList<IVisualTreeElement> GetVisualChildren(); 16 IVisualTreeElement? GetVisualParent();
Core\IVisualTreeElementProvidable.cs (1)
9 IVisualTreeElement? GetElement();
Core\WindowOverlayTappedEventArgs.cs (2)
9 public WindowOverlayTappedEventArgs(Point point, IList<IVisualTreeElement> elements, IList<IWindowOverlayElement> overlayElements) 16 public IList<IVisualTreeElement> VisualTreeElements { get; }
ViewExtensions.cs (2)
56 if (view is IVisualTreeElement vte) 58 foreach (var child in vte.GetVisualChildren())
VisualDiagnostics\VisualDiagnostics.cs (6)
42 public static void OnChildAdded(IVisualTreeElement parent, IVisualTreeElement child) 55 public static void OnChildAdded(IVisualTreeElement? parent, IVisualTreeElement child, int newLogicalIndex) 66 public static void OnChildRemoved(IVisualTreeElement parent, IVisualTreeElement child, int oldLogicalIndex)
VisualDiagnostics\VisualDiagnosticsOverlay.cs (7)
71 ScrollToView((IVisualTreeElement)adorner.VisualView); 78 public bool AddAdorner(IVisualTreeElement visualElement, bool scrollToView = false) 124 public bool RemoveAdorners(IVisualTreeElement visualElement) 145 public void ScrollToView(IVisualTreeElement element) 194 if (Window.Content is not IVisualTreeElement content) 202 static IScrollView? GetParentScrollView(IVisualTreeElement element) 210 var parent = element.GetVisualParent();
WindowOverlay\WindowOverlay.cs (3)
134 var elements = new List<IVisualTreeElement>(); 144 var visualWindow = Window as IVisualTreeElement;
Microsoft.Maui.Controls (45)
Application\Application.cs (2)
411 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() => this.Windows;
Cells\Cell.cs (4)
246 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren()); 321 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() 323 var children = new List<Maui.IVisualTreeElement>(LogicalChildrenInternal);
Element\Element.cs (4)
565 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() 569 IVisualTreeElement IVisualTreeElement.GetVisualParent() => this.Parent;
Element\Element_StyleSheets.cs (2)
62 void ApplyStyleSheets(List<StyleSheet> sheets, IVisualTreeElement element) 71 foreach (var child in element.GetVisualChildren())
LegacyLayouts\Layout.cs (2)
194 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() => Children.ToList().AsReadOnly();
ListView\ListView.cs (2)
25 IReadOnlyList<IVisualTreeElement> IVisualTreeElement.GetVisualChildren() => _visualChildren;
Menu\MenuItem.cs (1)
174 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
Shell\BaseShellItem.cs (1)
272 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
Shell\Shell.cs (1)
1972 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
Shell\ShellItem.cs (1)
136 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
Shell\ShellSection.cs (1)
199 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
StyleSheets\Style.cs (2)
86 foreach (var child in ((IVisualTreeElement)styleable).GetVisualChildren())
SwipeView\SwipeView.cs (5)
99 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() 101 List<Maui.IVisualTreeElement> elements = new List<IVisualTreeElement>(); 115 if (item is IVisualTreeElement vte)
TableView\TableSection.cs (10)
36 if (item is IVisualTreeElement element) 46 if (item is IVisualTreeElement element) 77 if (item is IVisualTreeElement element) 102 if (item is IVisualTreeElement element) 119 if (item is IVisualTreeElement element) 159 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() => this._children.Cast<IVisualTreeElement>().ToList().AsReadOnly(); 161 IVisualTreeElement IVisualTreeElement.GetVisualParent() => null;
TableView\TableView.cs (3)
171 IReadOnlyList<Maui.IVisualTreeElement> IVisualTreeElement.GetVisualChildren() => new List<Maui.IVisualTreeElement>() { this.Root };
VisualElement\VisualElement.cs (1)
1729 PropertyPropagationExtensions.PropagatePropertyChanged(propertyName, this, ((IVisualTreeElement)this).GetVisualChildren());
Window\Window.cs (3)
68 List<IVisualTreeElement> _visualChildren; 88 _visualChildren = new List<IVisualTreeElement>(); 385 ((IVisualTreeElement)bindable).GetVisualChildren());