Невозможно изменить класс во время выполнения с новыми свойствами 1 . VB.Net является статическим языком в том смысле, что он не может изменять свои определенные классы во время выполнения. Вы можете смоделировать то, что ищете, хотя с сумкой свойств.
Class Foo
Private _map as New Dictionary(Of String, Object)
Public Sub AddProperty(name as String, value as Object)
_map(name) = value
End Sub
Public Function GetProperty(name as String) as Object
return _map(name)
End Function
End Class
Он не разрешает прямой доступ в форме myFoo.Bar, но вы можете вызвать myFoo.GetProperty ("Bar").
1 Я полагаю, что это возможно при использовании API профилирования, но, скорее всего, это не то, что вы ищете.