ExtensionMethods.FindAncestorOrSelf Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Overloads
FindAncestorOrSelf<TAncestorType,TElementType>(TElementType, Func<TElementType,TElementType>) |
Helper method that finds the first ancestor of a given Type in the logical or visual tree, or the object itself if it matches in type. |
FindAncestorOrSelf<TAncestorType>(Visual) |
Helper method that finds the first ancestor of a given Type in the logical or visual tree, or the object itself if it matches in type. |
FindAncestorOrSelf<TElementType>(TElementType, Func<TElementType,TElementType>, Func<TElementType,Boolean>) |
Helper method that finds the first ancestor in the logical or visual tree, or the object itself, that is accepted by the ancestor selector function. |
FindAncestorOrSelf<TAncestorType,TElementType>(TElementType, Func<TElementType,TElementType>)
Helper method that finds the first ancestor of a given Type in the logical or visual tree, or the object itself if it matches in type.
public:
generic <typename TAncestorType, typename TElementType>
where TAncestorType : System::Windows::DependencyObject[System::Runtime::CompilerServices::Extension]
static TAncestorType FindAncestorOrSelf(TElementType obj, Func<TElementType, TElementType> ^ parentEvaluator);
public static TAncestorType FindAncestorOrSelf<TAncestorType,TElementType> (this TElementType obj, Func<TElementType,TElementType> parentEvaluator) where TAncestorType : System.Windows.DependencyObject;
static member FindAncestorOrSelf : 'ElementType * Func<'ElementType, 'ElementType> -> 'AncestorType (requires 'AncestorType :> System.Windows.DependencyObject)
<Extension()>
Public Function FindAncestorOrSelf(Of TAncestorType As DependencyObject, TElementType As DependencyObject) (obj As TElementType, parentEvaluator As Func(Of TElementType, TElementType)) As TAncestorType
Type Parameters
- TAncestorType
The type of ancestor to find.
- TElementType
The base type of intermediate elements in the ancestor tree.
Parameters
- obj
- TElementType
The object at which to begin searching.
- parentEvaluator
- Func<TElementType,TElementType>
Returns
The object itself, if it matches in type, else the first ancestor of type T in the parent chain of obj, or null if no ancestor is found.
Remarks
The type of obj
is Visual rather than DependencyObject in order to disambiguate this method from Microsoft.VisualStudio.PlatformUI.Shell.ExtensionMethods.FindAncestor(ViewElement element). If you need to find an ancestor of a non-Visual DependencyObject you should call FindAncestor<TAncestorType, DependencyObject>(obj, GetVisualOrLogicalParent) directly.
Applies to
FindAncestorOrSelf<TAncestorType>(Visual)
Helper method that finds the first ancestor of a given Type in the logical or visual tree, or the object itself if it matches in type.
public:
generic <typename TAncestorType>
where TAncestorType : System::Windows::DependencyObject[System::Runtime::CompilerServices::Extension]
static TAncestorType FindAncestorOrSelf(System::Windows::Media::Visual ^ obj);
public static TAncestorType FindAncestorOrSelf<TAncestorType> (this System.Windows.Media.Visual obj) where TAncestorType : System.Windows.DependencyObject;
static member FindAncestorOrSelf : System.Windows.Media.Visual -> 'AncestorType (requires 'AncestorType :> System.Windows.DependencyObject)
<Extension()>
Public Function FindAncestorOrSelf(Of TAncestorType As DependencyObject) (obj As Visual) As TAncestorType
Type Parameters
- TAncestorType
The type of ancestor to find.
Parameters
- obj
- Visual
The object at which to begin searching.
Returns
The object itself, if it matches in type, else the first ancestor of type T in the parent chain of obj, or null if no ancestor is found.
Remarks
The type of obj
is Visual rather than DependencyObject in order to disambiguate this method from Microsoft.VisualStudio.PlatformUI.Shell.ExtensionMethods.FindAncestor(ViewElement element). If you need to find an ancestor of a non-Visual DependencyObject you should call FindAncestor<TAncestorType, DependencyObject>(obj, GetVisualOrLogicalParent) directly.
Applies to
FindAncestorOrSelf<TElementType>(TElementType, Func<TElementType,TElementType>, Func<TElementType,Boolean>)
Helper method that finds the first ancestor in the logical or visual tree, or the object itself, that is accepted by the ancestor selector function.
public:
generic <typename TElementType>
[System::Runtime::CompilerServices::Extension]
static System::Object ^ FindAncestorOrSelf(TElementType obj, Func<TElementType, TElementType> ^ parentEvaluator, Func<TElementType, bool> ^ ancestorSelector);
public static object FindAncestorOrSelf<TElementType> (this TElementType obj, Func<TElementType,TElementType> parentEvaluator, Func<TElementType,bool> ancestorSelector);
static member FindAncestorOrSelf : 'ElementType * Func<'ElementType, 'ElementType> * Func<'ElementType, bool> -> obj
<Extension()>
Public Function FindAncestorOrSelf(Of TElementType) (obj As TElementType, parentEvaluator As Func(Of TElementType, TElementType), ancestorSelector As Func(Of TElementType, Boolean)) As Object
Type Parameters
- TElementType
The base type of intermediate elements in the ancestor tree.
Parameters
- obj
- TElementType
The object at which to begin searching.
- parentEvaluator
- Func<TElementType,TElementType>
The method used to determine the parent of an element.
Returns
The first ancestor in the parent chain of obj accepted by the the ancestor selector function, or null if no ancestor is found.