因此,在我的类'myInfo'中,我有一个别名属性'HeaderInfo',它是一个属性类,它实际上是一个更深层类的标题。在设置子属性时调用父属性集
Private _header As myHeader
Public Property HeaderInfo() AS myHeader
Get
Return _header
End Get
Set(ByVal value As myHeader)
_header = value
Someotherclass.Foo.Bar.AnotherThing.Header = _header
End Set
End Property
myHeader是一个具有像'名称','ID'等属性都是字符串的类。所以,当我的东西引用这个属性就像一个Windows窗体,我做
Dim info As New myInfo()
info.HeaderInfo.ID = "ID HERE"
info.HeaderInfo.Name = "Name here"
它适用于该info.HeaderInfo的实例正确设置它的所有属性的程度,但
Someotherclass.Foo.Bar.AnotherThing.Header = _header
从来没有被设置在myInfo.HeaderInfo'Set'中,因为我没有直接设置属性,我设置它的子属性假设它会传播。我不理解具有自定义类型的属性是如何工作的?有没有办法传播这个?
在'info'中设置属性后,您可以将'myHeader'从'info'分配给'Someotherclass.Foo.Bar.AnotherThing.Header'。 'Someotherclass.Foo.Bar.AnotherThing.Header = info.HeaderInfo' – 2013-02-13 14:54:17
@JohnWillemse是的,我想我会那样做。我正在尝试在myInfo的构造函数中执行此操作,因此它只是作为参考,但似乎并没有明显地以这种方式工作。 – 2013-02-13 15:02:53
不,在您设置属性之前调用构造函数,并且您留下了相同的问题。一旦属性被设置,只需“复制”标题信息。 – 2013-02-13 15:04:43