微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

c# – UIA的自定义条件

有没有办法编写自己的System. Windows.Automation.Condition类?我不知道这个类是如何工作的,因为它没有提供定义比较行为的公共方法.

背景:我使用UIAutomation库来查找用户与之交互的元素,以便重复他的动作.有时我发现很难通过其属性(如自动化ID或名称)访问元素.最近我发现Windows 7的Aero栏中的按钮将其名称更改为所选实例的名称,这真的让我感到震惊,因为我不能再使用确切的名称进行比较了.

解决方法

您可以使用 inspect.exe查看屏幕上任何UI元素的所有可用属性.这将有助于您了解在各种情况下要使用哪些属性来标识UI元素.
例如:我发现当元素名称不是静态时,AutomationId属性在某些情况下非常有用.

此外,如果要查找具有部分匹配名称的元素 – 您可以使用TrueCondition迭代可用元素的所有树(例如:通过FindAll方法)并手动检查名称匹配.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐