类型“<typename1>”的表达式永远不能为类型“<typename2>”
更新:2007 年 11 月
TypeOf...Is 表达式会对属于它不能包含的数据类型的对象引用变量进行测试。
在某些情况下(例如,两个类之间不存在任何继承关系),编译器可以确定 TypeOf...Is 测试一定会失败。
以下代码可以生成此错误。
Dim refVar as System.Windows.Forms.Form
If TypeOf refVar Is System.Array
End If
因为 Form 和 Array 是完全不相关的类型,所以编译器可以确定,对于 refVar 的任何值,TypeOf...Is 表达式都会返回 False。
**错误 ID:**BC31430
更正此错误
- 测试实际数据类型的变量,或将 TypeOf...Is 测试完全移除。