Как создать свойство, имеющее свои свойства и методы

Добавьте к контролу модуль класса. В этом модуле нужно создать все свойства и методы, которые будут включены в основное свойство. Далее введите в коде контрола

Dim m_TestProperty As New Class1

Public Property Get TestProperty() As Class1
Set TestProperty = m_TestProperty
End Property

Public Property Set TestProperty(ByVal New_TestProperty As Class1)
Set m_TestProperty = New_TestProperty
PropertyChanged "TestProperty"
End Property
Самое интересное состоит в том, что Property Get TestProperty вызывается в любом случае независимо от того читаем ли мы подсвойство этого свойства или записываем. Property Set TestProperty вызывается лишь в том случае, если мы присваиваем свойству TestProperty объект. Например, если на форму добавить два таких контрола и ввести
Set UserControl11.TestProperty = UserControl12.TestProperty
Таким же образом можно создать много вложенных свойств.
Hosted by uCoz