0

我有一个类 Class1 有几个属性(Property1,Property2,...)

由于某些设计原因,我只能访问,比如说,Property1。

有没有办法获得对 Class1 的引用?

我尝试了 Property1.Parent、Property1.Base 但都失败了。

我正在使用一个繁重的解决方法,它为每个属性创建一个单独的类,并引用主类:

Public Class DerivedProperty1
    Inherits Property1

    Public ParentClass as Class1

    Public Sub New(ParentClass as Class1)
        me.ParentClass = ParentClass
    End Sub
End Class

然后 Class1 将变为

Public Class Class1
    Public DerivedProperty1 as DerivedProperty1
    ...
End Class

还有其他与此解决方法不同的方法吗?

谢谢你。

4

1 回答 1

0

没有什么可以为此构建的。

这是因为该Class1.Property属性实际上只是隐藏了对Property1Class存储在其他地方的类实例的引用。正因为如此,同一个Property1Class实例可以被多个Class1实例引用。

并且您的命名具有误导性。Property1Class类不是从Class1类派生的。它只是被该类用作属性之一。

因此,如果您需要这种功能,则必须自己编写代码。

于 2013-10-28T05:30:56.640 回答