可以在给定 AutomationId 值的情况下实例化 AutomationElement 类型吗?
Can be instantiated the type AutomationElement given an AutomationId value?
我想知道,在 .NET 中,(managed)Microsoft UI Automation 框架是否提供了一些在给定 window 的 AutomationId
值的情况下实例化 AutomationElement
类型的方法,抑制了通过 window 句柄或其他类型搜索 window 的需要标识符。
用VB.NET写的一个伪例子来理解我的目的:
Dim automationId As Integer = 1504
Dim element As AutomationElement = AutomationElement.FromAutomationId(automationId)
嗯,不。任何自动化 属性 都是元素的 属性。自动化元素不一定对应于 HWND(每个 HWND 都有一个自动化元素,但很少有自动化元素具有 HWND,特别是在现代 UI 框架中),因此需要树遍历。此外,UI 自动化的好处是树遍历 在提供程序端 发生,而不是在您的应用程序中发生,从而减少了跨进程调用的数量。
我想知道,在 .NET 中,(managed)Microsoft UI Automation 框架是否提供了一些在给定 window 的 AutomationId
值的情况下实例化 AutomationElement
类型的方法,抑制了通过 window 句柄或其他类型搜索 window 的需要标识符。
用VB.NET写的一个伪例子来理解我的目的:
Dim automationId As Integer = 1504
Dim element As AutomationElement = AutomationElement.FromAutomationId(automationId)
嗯,不。任何自动化 属性 都是元素的 属性。自动化元素不一定对应于 HWND(每个 HWND 都有一个自动化元素,但很少有自动化元素具有 HWND,特别是在现代 UI 框架中),因此需要树遍历。此外,UI 自动化的好处是树遍历 在提供程序端 发生,而不是在您的应用程序中发生,从而减少了跨进程调用的数量。