Hi All, I have tried to transliterate the following C# code to IronPython:
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Windows.Automation; namespace ConsoleApplication1 { class Program { static void Main(string[] args) { AutomationElement eNode; eNode = TreeWalker.ControlViewWalker.GetFirstChild(AutomationElement.RootElement); while(eNode != null) { if (eNode.Current.Name == "Untitled - Notepad") { AutomationElement ae; ae = TreeWalker.ControlViewWalker.GetFirstChild(eNode); System.Console.WriteLine("-------------------"); while (ae != null) { System.Console.WriteLine("Name: {0}", ae.Current.Name); ae = TreeWalker.ControlViewWalker.GetNextSibling( ae); } System.Console.WriteLine("-------------------"); } eNode = TreeWalker.ControlViewWalker.GetNextSibling(eNode); } } } } The output of this program looks like: ------------------- Name: test1 Name: Untitled - Notepad Name: Application ------------------- This is my IronPython code: import clr clr.AddReference('UIAutomationTypes') clr.AddReference('UIAutomationProvider') clr.AddReference('UIAutomationClient') import System.Windows.Automation as swu rae = swu.TreeWalker.ControlViewWalker.GetFirstChild( swu.AutomationElement.RootElement ) while rae: if rae.Current.Name == 'Untitled - Notepad': print '-'*24 ae = swu.TreeWalker.ControlViewWalker.GetFirstChild( rae ) while ae: print ae.Current.Name ae = swu.TreeWalker.ControlViewWalker.GetNextSibling( ae ) print '-'*24 rae = swu.TreeWalker.ControlViewWalker.GetNextSibling( rae ) The output of this shows: ------------------------ test1 ------------------------ I read somewhere that IronPython used to have issues with UI Automation. Is still the case? Regards, Yngipy
_______________________________________________ Users mailing list Users@lists.ironpython.com http://lists.ironpython.com/listinfo.cgi/users-ironpython.com