为什么 PowerShell ISE 不发出 UIA_Text_TextChangedEventId?
Why isn't PowerShell ISE emitting UIA_Text_TextChangedEventId?
我在 Windows 7 中使用 UIAutomation 框架并尝试访问 PowerShell ISE 2.0。具体来说,我正在尝试为 UIA_Text_TextChangedEventId 事件设置一个事件处理程序。在我的玩具应用程序中,我为 ToolTipOpened 和 ToolTipClosed 添加了事件处理程序,这样我就可以确保我做的是正确的。果然,我从 ToolTip 事件的处理程序返回了一条消息。但据我所知,UIA_Text_TextChangedEventId 事件不会因 PowerShell ISE 应用程序文本的任何更改而发出。
为什么会这样?
所以,这不是一个真正的答案,但我发现当输出窗格中的文本发生变化时,PowerShell ISE 2.0 会发出 UIA_AsyncContentLoadedEventId 事件。所以我可以使用它而不是监听 non-existent TextChanged 事件。
我在 Windows 7 中使用 UIAutomation 框架并尝试访问 PowerShell ISE 2.0。具体来说,我正在尝试为 UIA_Text_TextChangedEventId 事件设置一个事件处理程序。在我的玩具应用程序中,我为 ToolTipOpened 和 ToolTipClosed 添加了事件处理程序,这样我就可以确保我做的是正确的。果然,我从 ToolTip 事件的处理程序返回了一条消息。但据我所知,UIA_Text_TextChangedEventId 事件不会因 PowerShell ISE 应用程序文本的任何更改而发出。
为什么会这样?
所以,这不是一个真正的答案,但我发现当输出窗格中的文本发生变化时,PowerShell ISE 2.0 会发出 UIA_AsyncContentLoadedEventId 事件。所以我可以使用它而不是监听 non-existent TextChanged 事件。