Beziehen eines Verweises auf eine Klasseninstanz anhand des Zeichenfolgennamens - VB.NET
Ist es möglich, mithilfe von Reflection oder einer anderen Methode einen Verweis auf eine bestimmte Klasseninstanz aus dem Namen dieser Klasseninstanz zu erhalten?
Zum Beispiel verwendet das Framework für die von mir entwickelten Anwendungen häufig öffentliche Klasseninstanzen wie: Public bMyreference as MyReference = new MyReference
Dann wird bMyReference in der gesamten Anwendung von benutzerdefinierten Steuerelementen und Code verwendet.
Eine der Eigenschaften der benutzerdefinierten Steuerelemente ist der "FieldName", der auf eine Eigenschaft in diesen Klasseninstanzen (bMyReference.MyField) als Zeichenfolge verweist.
Ich möchte in der Lage sein, diese Zeichenfolge "bMyReference.MyField" zu analysieren und dann auf die tatsächliche Instanz / Eigenschaft zurückzugreifen.
In VB6 würde ich ein EVAL oder ähnliches verwenden, um den String in ein tatsächliches Objekt umzuwandeln, aber dies funktioniert in VB.net offensichtlich nicht
Was ich mir vorstelle, ist so etwas
Dim FieldName as String = MyControl.FieldName ' sets FielName to bMyReference.MyField
Dim FieldObject() as String = FieldName.Split(".") ' Split into the Object / Property
Dim myInstance as Object = ......... ' Obtain a reference to the Instance and set as myInstance
Dim myProperty = myInstance.GetType().GetProperty(FieldObject(1))