DevTrain Startseite Advanced Developers Conference vom 14.-15. Februar 2011  
  
  
SUCHEN:  
ARTIKEL ONLINE: 525   

Kategorien
.NET
Datenbanken
Web
XML

Allgemein
Camp
Foren
Events
Persönliche Einstellungen
Registrieren
Prämien Shop
Kontakt
Impressum
Über DevTrain

Autoren



 

Forum: .Net Allgemein | Thema: Objekte dynamisch erzeugen | Von: G. Guest ( 06.06.2005 19:20)

Ich möchte ein neues Formular erzeugen, weiß aber erst zur Laufzeit welches.

Ich könnte natürlich über eine Fallunterscheidung die verschiedenen Möglichkeiten abfangen:

if( sFormular=="Formular1" ) then Formular1 frm = new Formular1();
if( sFormular=="Formular2" ) then Formular2 frm = new Formular2();
...

Aber gibt es da nicht eine Möglichkeit eine Klasse über einen String zu referenzieren, also etwas der Art

ConvertToClass("MyClass") myObject = new ConvertToClass("MyClass")


Betreff Von Datum
Re: Objekte dynamisch erzeugen
Hallo Guest,<br><br>schau Dir mal die klasse <br>System.Activator<br>and<br>den Type kannst Du Dir über<br>typeof(Formular1)<br>oder<br>System.Type.GetType("Formular1")<br>holen<br><br>Gruß<br>Ansgar Sommer
Ansgar Sommer 06.06.2005 22:18
Re: Objekte dynamisch erzeugen
Hallo Ansgar,<br><br>Danke für die Hilfe. Mit<br><br>object o = Activator.CreateInstance( type );<br><br>kann ich mir dynamisch ein Objekt erzeugen. Aber wie kann ich es in den Typ umwandeln, damit ich auf die...
G. Guest 07.06.2005 12:03
Re: Objekte dynamisch erzeugen
Hallo Bernd,<br><br>dafür kannst Du ganz einfach einen TypeCast verwenden<br><br>System.Windows.Form frm;<br>frm = new Activator.CreateInstance( type ) as System.Windows.Form;<br><br>Du solltest das ganze aber...
Ansgar Sommer 07.06.2005 13:00
Re: Objekte dynamisch erzeugen
Wenn ich den Typ in System.Windows.Form umwandeln will geht das. Ebenso in jeden anderen Typ, den ich zum Entwicklungszeitpunkt kenne. Das Problem ist aber, daß ich das Objekt in den Typ type...
G. Guest 07.06.2005 13:17
Re: Objekte dynamisch erzeugen
Hallo Bernd,<br><br>ich gehe mal davon aus das Du das "nur" brauchst weil Du auf bestimmte Methoden oder Properies zu greifen möchtest.<br>Das lässt sich leider nur über Interfaces oder abstract classes...
Ansgar Sommer 07.06.2005 14:52
Re: Objekte dynamisch erzeugen
Hi,<br>die Frage ist, wenn Du den Typ nicht kennst, woher weißt Du, welche Methode es gibt.<br>Ein Interface in die Klassen zu implementieren wäre das beste (wie Ansgar vorschlägt)<br>Wenn das nicht geht,...
Klaas Wedemeyer 08.06.2005 13:05
Re: Objekte dynamisch erzeugen
Hallo,<br><br>ich habe das ganze jetzt mit einem Interface realisiert und es klappt prima. <br>Damit kann ich nun zur Laufzeit alle Formulare, die in einer Assembly implementiert sind, auslesen und mir die...
G. Guest 09.06.2005 09:14

Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!

 Betreff:
 Nachricht: Den Beitrag finden Sie nun unter: http://beta.devtrain.de/foren Die Benutzerdaten und Foreninhalte von beta.devtrain.de und www.devtrain.de sind die selben.
Sie können sich dort sogar per RSS über neue Inhalte informieren lassen.
Bei Problemen bitte direkt Mail an asp [AT] ppedv.de.

 Signatur:

  



Login
Username:


Passwort:






Passwort vergessen?

Visual Studio 1 Magazin

© Copyright 2003 ppedv AG