【问题标题】:UI Automation and Ribbon controlUI 自动化和功能区控件
【发布时间】:2013-11-19 20:21:57
【问题描述】:

我使用 UIAutomation API 对 WPF 应用程序进行自动化处理。一切都很顺利,直到我点击了功能区控件。通过 Inspect.exe 可以轻松查看有关 Ribbon 及其子项的信息,但在代码中我无法获取有关这些元素的信息。

换句话说,在这段代码中 aeElement 始终为空:

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 也没有答案。

【问题讨论】:

标签: c# wpf ui-automation


【解决方案1】:

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

一个。从根开始搜索,然后深入到窗口、上下文等等

b.如果 a 不起作用,那么它一定是你的拼写。名称区分大小写。

c。你为什么不使用AutomationID?它是为那个用途而创建的!

【讨论】:

  • 不,root 根本不是问题;肯定没有拼写错误;正如我在问题中提到的那样,我也尝试了 AutomationId 属性 - 也不起作用
  • 所以当你从根目录搜索时你没有问题吗?如果是这样,请更深入地搜索。它可能与它自己的窗口处于平行范围内
猜你喜欢
  • 2019-10-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-04-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多