给定一个AutomationId值可以实例化AutomationElement类型吗?

时间:2016-09-22 19:43:49

标签: c# .net vb.net ui-automation

我想知道,在 .NET 中,如果(托管) Microsoft UI Automation 框架提供了一些实例化AutomationElement类型的方法, AutomationId窗口的值,以这种方式抑制需要通过窗口句柄或其他类型的标识符搜索窗口。

用VB.NET编写的伪示例,用于理解我的目的:

Dim automationId As Integer = 1504
Dim element As AutomationElement = AutomationElement.FromAutomationId(automationId)

1 个答案:

答案 0 :(得分:3)

嗯,不。任何自动化属性都是元素的属性。自动化元素不一定对应于HWND(每个HWND都有一个自动化元素,但很少有自动化元素具有HWND,特别是在现代UI框架中),因此需要树步行。此外,UI自动化的优点在于树遍历在提供者端,而不是在您的应用程序中,减少了跨进程调用的数量。