我有一个上下文菜单(来自infragistics的PopupMenuControlTrusted控件)
使用inspect.exe我可以毫无问题地找到菜单和子菜单项 使用UI自动化验证(http://uiautomationverify.codeplex.com/)我可以找到一些困难的菜单项 我需要将鼠标悬停在控件上以找到它,此时上下文菜单找到了正确的窗口句柄但没有子项。 然后我必须告诉程序再次找到上下文菜单,此时找到所有子菜单项。
当我通过代码执行此操作时,我永远找不到子项,TreeWalker.RawWalker.GetFirstChild(menu)始终返回null 我正在引用UIAComWrapper(与UI自动化验证工具中使用的相同)
我尝试过使用ControlWalker,在元素上发送CacheRequest.Current但我找不到任何子元素
之前是否有人遇到过这个问题,或者可以给我任何指导呢?
修改 我实际上发现AutomationElement.FromPoint可以找到内部元素,从那里我可以使用树步行器来查找父节点,父节点原来是我以前的菜单,但我仍然无法找到子元素菜单,谁能解释一下?我在这里很困惑