title: Class with property that is a List Of items in a subclass
body: <p>I want a class for a Customer, with a text property name.
  Another property CustAddress will be a list of multiple addresses.
  Each address will have two string properties.</p>
  
  <p>Here is what I have.
  I am not sure if I need something in the constructor of the class address.
  And I'm even not sure what the code would look like to exploit this class.</p>
  
  <p>Also, I can't get the F11 Step Into debug feature to step into the class code.  If i put a break in the class code it does break and works fine.  I have modified the option "Just My Code" to remove checkbox, but it does not help.  I have a solution containing one class module and one Windows App together.</p>
  
  <pre><code>&lt;ComClass(ComClass1.ClassId, ComClass1.InterfaceId, ComClass1.EventsId)&gt;
  Public Class ComClass1
  #Region "COM GUIDs"
      ' These  GUIDs provide the COM identity for this class 
      ' and its COM interfaces. If you change them, existing 
      ' clients will no longer be able to access the class.
      Public Const ClassId As String = "c8e723b4-f229-4368-9737-97c4c71d490a"
      Public Const InterfaceId As String = "16275ddb-5cfe-47c0-995f-84a5f868ad1b"
      Public Const EventsId As String = "dad73a5c-8ac4-4384-a5f9-8e2c388b5514"
  #End Region
      ' A creatable COM class must have a Public Sub New() 
      ' with no parameters, otherwise, the class will not be 
      ' registered in the COM registry and cannot be created 
      ' via CreateObject.
  
      'Fields  
      Private _name As String
      Public _CustAddress As List(Of address)
  
      'Constructor for class ComClass
      Public Sub New()
          _CustAddress = New List(Of address)
      End Sub
  
      Public Property CustName() As String
          Get
              Return _name
          End Get
          Set(ByVal Value As String)
              _name = Value
          End Set
      End Property
  
      Public Property CustAddress() As List(Of address)
          Get
              Return _CustAddress
          End Get
          Set(value As List(Of address))
              _CustAddress = value
          End Set
      End Property
  
      Public Class address
  
          Private _address1 As String
          Private _address2 As String
  
          Public Sub New()
              '??????
          End Sub
  
          Public Property Address1 As String
              Get
                  Return _address1
              End Get
              Set(value As String)
                  _address1 = value
              End Set
          End Property
  
          Public Property Address2 As String
              Get
                  Return _address2
              End Get
              Set(value As String)
                  _address2 = value
              End Set
          End Property
      End Class
  
  End Class
  </code></pre>