Feedback

C# - Zugriff auf Variablen/Funktionen einer unbekannten Klasse

Veröffentlicht von am 04.11.2010
(1 Bewertungen)
Mit diesen einfachen Funktionen ist es möglich in einer unbekannten Klasse eine bekannte, öffentliche Variable zu ändern oder auszulesen.

Da ich momentan ein Projekt habe, in der ich von einer anderen Assembly des Projekts auf Member des Parentforms zugreifen muss, bin ich durch ein wenig suchen und probieren auf diese Lösung gestoßen.
GFU-Schulungen  [Anzeige]

VB.NET Aufbau

Sie verfügen nach der Schulung über fundierte Kenntnisse in der Arbeit mit objektorientierten Modellen in VB.NET und können wiederverwendbare Komponenten eigenständig erzeugen.

C# Komplett

Sie kennen sich in objektorientierter Programmierung aus. Sie schreiben C++ oder Java? Und nun stehen Sie vor der Aufgabe, in C# Anwendungen zu erstellen. Das C# Komplett-Seminar verschafft Ihnen umfassende Programmierkenntnisse in dieser Sprache. Nach der Schulung entwickeln Sie selbständig Anwendungen mit C#. Sie kennen die Datentypen und Klassenbibliotheken der objektorientierten Programmiersprache C#. Der Komplettkurs setzt bei den Grundlagen von C# ein. Sie arbeiten mit Variablen und konvertieren Typen. Multithreading, Delegates, Generics sind nach dem Seminar für Sie kein Geheimnis mehr.

//ParentForm ist in diesem Fall das besitzende Objekt der Member

//Wert auslesen
this.ParentForm.GetType().GetField("Name der Variable").GetValue(this.ParentForm);

//Wert setzen
this.ParentForm.GetType().GetField("Name der Variable").SetValue(this.ParentForm, "Neuer Wert");

//Funktion ausführen
//Beim Invoke müssen die Parameter der Funktion angegeben werden. In meinem Fall hat die Funktion keine.
this.ParentForm.GetType().GetMethod("Name der Funktion").Invoke(this.ParentForm, null);


//Über die Type-Klasse sind noch ein paar weitere lustige Funktion verfügbar. Viel Spaß damit!
Abgelegt unter Type, GetType, Funktion, Member, Klasse, ParentForm.

Kommentare zum Snippet

 

Logge dich ein, um hier zu kommentieren!