我使用UIAutomation API为WPF应用程序进行自动化。一切顺利,直到我点击Ribbon控件。我可以通过Inspect.exe查看有关Ribbon及其子项的信息,但在代码中我无法获取有关这些元素的信息。
换句话说,在此代码中,aeElement始终为null:
aeElement = aeForm.FindFirst(TreeScope.Children,
new PropertyCondition(AutomationElement.NameProperty, "XXX"));
我尝试了TreeScope.Descendants
和TreeScope.Elements
。
我尝试了AutomationElement.ControlTypeProperty
和AutomationElement.AutomationIdProperty
。
我试过了TreeWalker
- 没什么用。
想知道是否有针对该问题的解决方案? 非常感谢你提前。
编辑:http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/home?forum=windowsaccessibilityandautomation也没有答案。答案 0 :(得分:1)
你最糟糕的情况是根,对吗? 然后尝试以下解决方案:
一个。从根目录搜索,然后深入到窗口,上下文等等,继续
湾如果一个不起作用,那一定是你的拼写。名称区分大小写。
℃。你为什么不使用AutomationID?它是为这种用途而创建的!