Entwickler-Ecke
WinForms - Dynamische laden von usercontrol
rano1972 - Di 07.10.08 17:52
Titel: Dynamische laden von usercontrol
Hallo
Ich habe 2 Usercontrol erstellt. UC_Circle zeichnet ein Kreis. Ich möchte abhängig von meiner empfangene Daten ein Kreis dazu zeichenn oder löschen. ich möchte diese Kreise auf einem Panel zeichenen. so habe ich einen UC_myPanel erstellt.
wie kann ich in Laufzeit die Kreise auf diesen Usercontrol (UC_myPanel) zeichenen (add control) oder löschen (remove control).
Ich benutze VS2005
Ich hab schon das Panel als Container definiert:
[Designer("System.Windows.Forms.Design.ParentControlDesigner, System.Design", typeof(IDesigner))]
UC_Cicle : wird mit override OnPaint(...) gezeichnet
UC_myPanle: benutzt auch die override OnPaint(...) Funktion. innerhalb diese Funktion wird "this.Controls.Add(neueDevice);" aufgerufen. es funktionert leider nicht.
Danke
Moderiert von
Christian S.: Topic aus C# - Die Sprache verschoben am Fr 10.10.2008 um 17:44
lothi - Di 07.10.08 20:08
Hallo
Ich habe dein Problem verstanden. Die Lösung hast du selber gepostet.
Das Visual Studio fügt Steuerelemente im Konstruktor und nicht im OnPaint() Ereignis dem Form zu.
Also einfach:
meinPanel.Controls.Add(UC_Circel);
Im gleichen Ort wo das Panel erstellt wurde.
Gruss Lothi
rano1972 - Mi 08.10.08 11:11
ZU erst vielen Dank für die Antwort.
Ja du hast Recht. Dasgleiche mache ich zur Zeit auch. Mein Panel und AddContro in Mainform benutzen.
Allerdings möchte ich das PAnel mit der Kreise als einen Objekt ansprechen d.h.:
ich empfange daten von meine hardware. dies eDaten wirde formatiert und an das meinPanel weitergegeben. In meinPanl definiere eine List von ObjektKreis. MeinPanel hat eine funktion, die überprüft ob eine neue Objektkreis gezeichnet werden soll oder einen alten aktualisieren soll. MeinPanl soll dann selbst das Objektkreis zeichen (different Koordinaten und größe).
meinpanel und die kreis sollen im Laufzeit gezeichnet werden.
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!