public async Task <List <WindowInfo> > Index() { var xWindows = new List <WindowInfo>(); await Dispatcher.UIThread.InvokeTaskAsync(() => { foreach (var xWindow in Window.OpenWindows) { xWindows.Add(DataCreators.Create(xWindow)); } }); return(xWindows); }
public async Task <AutomationElementInfo> Index([FromQuery] long windowHandle, [FromQuery] string automationId) { var xResult = new List <AutomationElementInfo>(); await Dispatcher.UIThread.InvokeTaskAsync(() => { var xWindow = Window.OpenWindows.FirstOrDefault(i => i.PlatformImpl.Handle.Handle.ToInt64() == windowHandle); if (xWindow == null) { throw new Exception("Window not found!"); } var xControl = xWindow.FindControl <Control>(automationId); var xResultItem = DataCreators.Create(xControl); xResult.Add(xResultItem); }); return(xResult.FirstOrDefault()); }