I've got that step. Here's what I have for My Name property. I may be causing myself some grief as I was not replacing code, as suggested, but simply commenting it out. Thanks for taking a stab at it though.
Code:
Public Overloads Property Name(ByVal type As NameTypes) As String
Get
If mNames Is Nothing Then mNames = New Generic.Dictionary(Of NameTypes, String)
Return mNames(type)
End Get
Set(ByVal value As String)
If mNames Is Nothing Then mNames = New Generic.Dictionary(Of NameTypes, String)
If mNames.ContainsKey(type) Then
mNames.Item(type) = value
Else
mNames.Add(type, value)
End If
If type = NameTypes.Normal Then
MyBase.Name = value
End If
End Set
End Property