C# - Unterformulare

Alexander12

Erfahrenes Mitglied
Hi.

Ich habe Mal ne klitzekleine Frage.

Ich habe ein Programm mit eine Treeview. Rechts neben dem Treeview habe ich mehrere Panels aufeinandergelegt, je nachdem was der User im Treeview auswählt, erscheint dann da gewünschte Fenster.

Ich habe es euch in einem Kleinen Beispiel (Anhang, Framework 1.1 benötigt) veranschaulicht, was ich meine.

So, nun zu meiner Frage:
Wenn Ich nachträglich was verändern will, sind ja die panels aufeinander.
Kann Ich mittels C# Unterformulare einbinden, so wie das z.B. in ACCESS geht?

Dann kann Ich die Forms nämlich einzeln bearbeiten. Gut, ne andere Möglichkeit wären UserControls, aber trotzdem meine Frage, ob Ich Unterformulare einbinden kann, wäre mir echt lieber.


MfG Alexander12
 

Anhänge

  • treeview_test.zip
    4,3 KB · Aufrufe: 170
Zuletzt bearbeitet:
Was macht denn das für einen Unterschied?

Code:
panelx.controls.add(deineForm)

Oder wie oder was? Dein Problem besteht doch nur darin wie du die Forms per Auswahl in dein Panel bekommst oder?
 
Hi.

Mir gehts darum dass Ich jede Form nachher einzeln bearbeiten kann, Ich hab jetzt das Beispiel oben angehängt.


MfG Alexander12
 
Sorry, aber ich versteh dein Problem immer noch nicht :-(
Wann willst du die Forms verändern? Während der Laufzeit oder was?

Besser gesagt, ich seh dein Problem nicht :(
 
Hi.

Allgemein, wenn das Programm Mal verändert wird, wenn Man es mal überarbeitet, sowas mein Ich. Da ist es besser wenn Man die Forms getrennt bearbeiten kann und sich nicht durch die Panels wühlen muss.


MfG Alexander12
 
Ja, du hast doch auch nur ein Panel, das auf deiner MainForm, in welches du einfach abwechselnd die Forms laden kannst. So hast du jede Form für sich, und nur ein Panel, also nichts von wühlen, sondern einfach Designer öffnen Form auswählen und bearbeiten... Irgend wie bin ich immer noch nicht hinter dein Problem gestiegen? Willst du wissen wie man die versch. Forms einem Panel zuweist? Oder wie oder was? Sry, bin nun schon wieder einmal seit bald 6 stunden mit Bugs überhäuft, deshalb ist mein gedanken Gang nicht mehr so frisch :suspekt:
 
Hi.

Ich habe den Code Mal probiert:

Code:
this.panel1.Controls.Add(Form1());

Da gibt er mir nen Error aus..


MfG Alexander12
 
So einfach ist das schon nicht, natürlich musst du deine Form zeurst noch Instanzieren, bevor du sie addest, oder du setzt deine UnterForms als Singleton, welches grantiert, das deine UnterForms auch nur einmal vorkommen, und auserdem musst du nicht jede Form in deiner MainForm neu Instanzieren, sondern kannst über die Instance auf deine Form zugreifen, aufrufen etc.
 
Hi.

Ich habe das jetzt Mal so probiert.

Code:
Form1 frm = new Form1();
this.panel1.Controls.Add(frm);

Dann kommt aber so eine unschöne Meldung:

Code:
Cannot add a toplevel control to a control


MfG Alexander12
 
Das heisst das deine UnterForms normale Forms sind, wobei sich ein UserControl hier ins Rampenlicht setzt, kannst du ja gleich handhaben wie eine Form, und sie lassen sich ohne Probleme ins Panel adden.

PS:

Thema singleton Ansatz

Einfach noch deine private DeineForm
{

}

ind protected DeineForm
{

}

ändern
 

Neue Beiträge

Zurück