【发布时间】:2014-07-13 08:18:02
【问题描述】:
我有自己的自定义PropertyInfo:
Public MustInherit Class MyCustomPropertyInfo
Inherits PropertyInfo
'... Some Added Properties
End Class
在另一个类中我尝试检索它:
Dim MyActualProperty As MyCustomPropertyInfo = Me.GetType.GetProperty("SomeProperty")
但它给了我这个例外:
无法将“RuntimePropertyInfo”类型的对象转换为类型 'MyCustomPropertyInfo'
【问题讨论】:
-
你不能投射到对象不是的东西上。
RuntimePropertyInfo不是MyCustomPropertyInfo所以你根本不能把它当作一个。 -
我需要一个解决方法,如何扩展 propertyinfo 类的功能以向我的属性添加更多信息,这是必要的。
-
你试图通过扩展
PropertyInfo来解决的根本问题是什么? -
我需要为每个设置的属性添加一个状态,并获取一个指示它是否正确的值,绑定到表示属性的每个控件的文本块文本。 state 的值是通过这些控件设置 onpropertychanged...
-
不要通过扩展
PropertyInfo来做到这一点,因为这对于类型来说是静态的。您正在处理对象的实例,因此您应该只创建一个具有所需布尔属性的适配器类,您可以实例化并包装您正在跟踪的每个实例。
标签: vb.net inheritance propertyinfo