我一直试图弄清楚这一点,所以任何帮助都会非常感激。我在客户端使用UI自动化来监视和报告另一个应用程序中的用户选择。我在Server 2003上完美地运行了代码。然而,在Server 2008上,我监视的控件被报告为数据网格中的项目或列表。这是随机的,我注意到如果我继续在控件中选择行,最终控件将被报告为数据网格。在服务器2003上,它总是被报告为数据网格,因此我的代码运行良好。
我正在使用Visual Studio 2010 C#开发。
更新
我想提一下,我使用UI Spy工具获得了相同的结果,因此源代码与此特定情况无关。
答案 0 :(得分:1)
根据几个方面,UltraGrid重新创建它的句柄(有时甚至是经常)......这可能会弄乱UI自动化的感知......我不认为你可以从中做任何事情在目标应用之外......
其他信息:
根据this,有问题的控件(Infragistics UltraGrid)不支持Windows / MS UI自动化。
目前唯一支持的自动化解决方案是TestAdvantage product from the same vendor。
虽然他们似乎正在努力在未来几个月内添加对Windows UI自动化的支持......