public static IEnumerable<AutomationElement> Descendants(this AutomationElement element) { var result = new AutomationElement[1024]; element.FindAll(TreeScope.Descendants, System.Windows.Automation.Condition.TrueCondition).CopyTo(result, 0); return result.TakeWhile(e => e != null).ToArray(); }