繁体   English   中英

Windows UI自动化。 如何自动执行Windows资源管理器滚动条?

[英]Windows UI Automation. How to automate windows explorer scroll bar?

我正在使用Windows UI自动化框架: http : //msdn.microsoft.com/zh-cn/library/System.Windows.Automation(v=vs.110).aspx

我遇到的问题是,Microsoft提供的UI自动化框架似乎对某些Windows资源管理器视而不见。 我可以找到根目录AutomationElement“滚动条”,但是找不到其子组件,即按钮,位置等。这很香,因为显然许多WPF应用程序都会使用Windows资源管理器来选择文件,因此Microsoft会将其视为主要错误。在其框架中。 所以我一定做错了吗?

在此处输入图片说明

下面的代码演示了我在做什么。 root是Windows资源管理器AutomationElement。 我验证了这一点,因为可以看到滚动条项,因为它具有自动化ID。 我还验证了它是正确的垂直滚动条,因为Windows资源管理器中有两个滚动条。

 AutomationElement functionControl = root.FindFirst(TreeScope.Descendants |         
 TreeScope.Element | TreeScope.Subtree,new 
 PropertyCondition(AutomationElement.NameProperty, "Page down"));

您实际上想做什么? 如果您尝试向下滚动,则不应该通过实际找到向下/向上按钮来实现,而应该通过从滚动条本身请求ScrollPattern,然后调用ScrollVertical / ScrollHortizontal / SetScrollPercent来实现; 。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM