diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-06-11 10:59:51 +0300 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2018-06-11 10:59:51 +0300 |
| commit | 88477019255efb3ff02ba3de195741f1d49a925e (patch) | |
| tree | c4950adb07b18d79d264ad55d0089be8ee7b0aa0 /Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs | |
| parent | b21d8e7c164b63d14d15cfdf3dda68ae88a03043 (diff) | |
| download | Tango-88477019255efb3ff02ba3de195741f1d49a925e.tar.gz Tango-88477019255efb3ff02ba3de195741f1d49a925e.zip | |
Moved some method from UIHelper to DependencyObjectExtensions
Diffstat (limited to 'Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs')
| -rw-r--r-- | Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs | 77 |
1 files changed, 0 insertions, 77 deletions
diff --git a/Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs b/Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs index ae4081c43..e8c79c81d 100644 --- a/Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs +++ b/Software/Visual_Studio/Tango.SharedUI/Helpers/UIHelper.cs @@ -366,82 +366,5 @@ namespace Tango.SharedUI.Helpers return bmp; } - - public static T FindChild<T>(this DependencyObject depObj) where T : DependencyObject - { - if (depObj == null) return null; - - for (int i = 0; i < VisualTreeHelper.GetChildrenCount(depObj); i++) - { - var child = VisualTreeHelper.GetChild(depObj, i); - - var result = (child as T) ?? FindChild<T>(child); - if (result != null) return result; - } - return null; - } - - /// <summary> - /// Finds a Child of a given item in the visual tree. - /// </summary> - /// <param name="parent">A direct parent of the queried item.</param> - /// <typeparam name="T">The type of the queried item.</typeparam> - /// <param name="childName">x:Name or Name of child. </param> - /// <returns>The first parent item that matches the submitted type parameter. - /// If not matching item can be found, - /// a null parent is being returned.</returns> - public static T FindChild<T>(DependencyObject parent, string childName) - where T : DependencyObject - { - // Confirm parent and childName are valid. - if (parent == null) return null; - - T foundChild = null; - - int childrenCount = VisualTreeHelper.GetChildrenCount(parent); - for (int i = 0; i < childrenCount; i++) - { - var child = VisualTreeHelper.GetChild(parent, i); - // If the child is not of the request child type child - T childType = child as T; - if (childType == null) - { - // recursively drill down the tree - foundChild = FindChild<T>(child, childName); - - // If the child is found, break so we do not overwrite the found child. - if (foundChild != null) break; - } - else if (!string.IsNullOrEmpty(childName)) - { - var frameworkElement = child as FrameworkElement; - // If the child's name is set for search - if (frameworkElement != null && frameworkElement.Name == childName) - { - // if the child's name is of the request name - foundChild = (T)child; - break; - } - } - else - { - // child element found. - foundChild = (T)child; - break; - } - } - - return foundChild; - } - - public static T FindAncestor<T>(DependencyObject dependencyObject) where T : DependencyObject - { - var parent = VisualTreeHelper.GetParent(dependencyObject); - - if (parent == null) return null; - - var parentT = parent as T; - return parentT ?? FindAncestor<T>(parent); - } } } |
