【发布时间】:2012-11-24 09:16:43
【问题描述】:
我一直在尝试将泛型引入我们的自动化代码,因此我尝试将 WpfControl 转换为泛型类型 T,其中 T 被限制为 WpfControl 类型。
return control as T;
T 将始终是 WpfControl 的子级,但是当我将 WpfControl 类型的控件转换为泛型类型时,它返回 null。我还尝试将控制权转换为确切的子类型,例如:
var childControl = control as WpfTabList;
这仍然返回null。有人遇到过类似的问题吗?
看到这个WpfControl Class
【问题讨论】:
-
如果一切都如您所描述,那么它应该工作。我怀疑你缺少一些东西。我可以建议你:a)在调试器中单步执行,看看运行时“控制”的类型是什么,b)发布更完整的代码。
-
还要检查控件是否为空!以前我就被这发现了。
-
调用构造函数的行在哪里 - 请添加它。 (control = new ....) 当你找到那条线时,你可能会自己解决它;) (但如果不是 - 我还在这里)
-
您还应该显示或记录
control.GetType().ToString()以确保它是您期望的类型...
标签: c# automation coded-ui-tests