Forms zu Laufzeit erstellen

JJB

Cogito ergo brumm
Tachtach !

Ich muss Comboboxen anzeigen. Deren Zahl und Inhalt wird aber erst zu Laufzeit durch den Benutzer bekannt. Ich hatte daran gedacht, die Boxen zu Laufzeit in einer Richttextbox zu erzeugen, aber das ist vielleicht doch ein wenig hirngespinstig.

Hat jemand ne Ahnung ob man irgendwas in der Art machen kann ? :(

Ich möchte nur ungern 3000 Comboboxen in die Oberfläche packen, um sie für den Gebrauch zu reservieren. Ich weißt nicht mal wieviel es am Ende werden können. :rolleyes:

Bin dankbar für jeden Tip

Mfg
JJB
 
Das geht natürlich.

Du erstellst jedes Mal, wenn du eine ComboBox brauchst ein Objekt der Klasse System.Windows.Forms.ComboBox, gibst ihm eine Location und eine Size und packst das Teil dann noch in den Controls-Container deines Forms.

Code:
			ComboBox bx = new ComboBox();
			bx.Location = new Point(10,10);
			bx.Width=150; // Beispiel ausm Effeff...
			bx.Height=20; // Beispiel ausm Effeff...
			this.Controls.Add(bx); // "this" ist dein Form

Über das Objekt kannst du dann auch ganz einfach auf den Inhalt zugreifen.

Entfernen kannst du das Teil dann genau so einfach, indem du es aus dem Controls-Container holst, es daraus löscht und seine Dispose-Methode aufrufst.


Ich hoffe das is so alles korrekt...

Gruß, Hendrik
 
Also ich kann jetzt zu Laufzeit eine ComboBox in einer RichtTextBox erzeugen, aber wenn ich eine zweite hinzufüge, wird dabei die erste einfach überschrieben.

Woran kann das liegen ?

----

Hat sich erledigt, man kann nicht 2 mal die selbe Instanz in eine RichTextBox einfügen ohne die erste zu überschreiben.

:offtopic:
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück