我使用UIAutomation API对WPF应用程序进行自动化。一切正常,直到我按下功能区控件。我可以通过Inspect.exe轻松查看关于Ribbon和其子级的信息,但是在代码内部,我无法获取有关这些元素的信息。

换句话说,在此代码中,aeElement始终为null:

aeElement = aeForm.FindFirst(TreeScope.Children,
                  new PropertyCondition(AutomationElement.NameProperty, "XXX"));


我尝试了TreeScope.DescendantsTreeScope.Elements
我尝试了AutomationElement.ControlTypePropertyAutomationElement.AutomationIdProperty
我尝试了TreeWalker –没有任何效果。

想知道是否有针对该问题的解决方案?
提前非常感谢您。

编辑:http://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/home?forum=windowsaccessibilityandautomation上也没有答案。

最佳答案

最坏的情况是根源,对吗?
然后尝试以下解决方案:

一种。从根开始搜索,然后深入到窗口,上下文等,依此类推

b。如果a无效,则必须是您的拼写。名称区分大小写。

C。为什么不使用AutomationID?它是为此创建的!

09-18 21:32