有没有办法编写你自己的System.Windows.Automation.Condition类?我不知道这个类是如何工作的,因为它没有提供公共方法来定义比较行为。
背景:我使用UIAutomation库查找用户与之交互的元素,以便重复他的操作。有时,我发现很难通过诸如自动化id或名称之类的属性来访问元素。最近,我发现Windows7的Aero栏中的按钮将它们的名称更改为所选实例的名称,这真的让我震惊,因为我不能再使用确切的名称进行比较。
发布于 2017-12-20 22:26:09
您可以使用inspect.exe查看屏幕上任何UI元素的所有可用属性。这将帮助您了解在各种情况下,您希望使用哪些属性来标识UI元素。例如:我发现当元素名不是静态的时候,AutomationId属性在某些情况下非常有用。
同样,如果你想找到与其名称部分匹配的元素,你可以用TrueCondition遍历所有可用元素的树(例如:通过FindAll方法),并手动检查名称匹配。
https://stackoverflow.com/questions/36398182
复制相似问题