"We are back" « oc.at

C# Frage

Facetious 03.12.2005 - 15:45 728 7
Posts

Facetious

Addicted
Avatar
Registered: Oct 2003
Location: Wien
Posts: 406
Hi!

Ist es möglich ein Form in ein anderes zu laden?

zB
ich habe im Form1 ein Hauptmenü
bei klick auf den 2. Punkt des Menüs soll Form2 in Form1 geladen und angezeigt werden

vielen dank im vorraus

mfg Facetious
Bearbeitet von Facetious am 03.12.2005, 16:50

Frys_Assassin

information keeper
Avatar
Registered: Oct 2001
Location: New New York
Posts: 2503
soll das Menü das aus Form1 bleiben und nur der 'Content' wird ersetzt?
edith: Ich würd aber sagen es is einfacher du ladest das neue Formular setzt das aktuelle Form auf invisible und zeigst dann das neue an. Wüsst nicht dass man ein Subform so einfach reinbringt.
edith2: eleganter wäre es, wenn du auf einem form bleiben möchtest, jeweils ein panel mit den gewünschten controls zu bestücken und per menüeintrag diese in der sichtbarkeit wechseln lassen.
Bearbeitet von Frys_Assassin am 03.12.2005, 16:20

Facetious

Addicted
Avatar
Registered: Oct 2003
Location: Wien
Posts: 406
Zitat von Frys_Assassin
edith2: eleganter wäre es, wenn du auf einem form bleiben möchtest, jeweils ein panel mit den gewünschten controls zu bestücken und per menüeintrag diese in der sichtbarkeit wechseln lassen.

das dachte ich mir auch, nur wird das etwas unübersichtlich, oder gibt es eine möglichkeit die panels auch in der umgebung selbst auszublenden?

mfg und thx Facetious

Frys_Assassin

information keeper
Avatar
Registered: Oct 2001
Location: New New York
Posts: 2503
naja, wennst die Panels übereinander legst siehst eh nur das obere und mit "Send to back" bekommst dann eh das andere wieder zu sehen. Zugegeben eine anstrengende Methode, aber möglich. Ich hab nur das 2003er da, falls du das 2005er verwendest - vielleicht gibts dort etwas besseres.

stevke

in the bin
Avatar
Registered: Sep 2001
Location: Wien
Posts: 3964
Du kannst dir ja eigene Controls basteln, wenn du ein neues erstellst gibst die gewünschten Sachen rein, wenn du dann auf einen Menueintrag klickst, erstellst eine neue Instanz von dem Control und zeigst das Control an.

Facetious

Addicted
Avatar
Registered: Oct 2003
Location: Wien
Posts: 406
Zitat von Frys_Assassin
naja, wennst die Panels übereinander legst siehst eh nur das obere und mit "Send to back" bekommst dann eh das andere wieder zu sehen. Zugegeben eine anstrengende Methode, aber möglich. Ich hab nur das 2003er da, falls du das 2005er verwendest - vielleicht gibts dort etwas besseres.

passt..das wusste ich nicht, ich machs jetzt mit verschiedenen panels
danke für die hilfe

mfg Facetious

Facetious

Addicted
Avatar
Registered: Oct 2003
Location: Wien
Posts: 406
add:

um ein oderer mehrere forms in ein "parent" form zu laden, muss dieses parent form ein mdi container sein
nähere infos hier:
http://www.c-sharpcorner.com/winfor...ormssampPSD.asp

mfg Facetious

stevke

in the bin
Avatar
Registered: Sep 2001
Location: Wien
Posts: 3964
MDI Fenster sind aber imho nicht so toll, du musst drauf achten das jedes untergeordnete Fenster disabled ist, sonst bekommst vielleicht Dateninkonsistenzen, außerdem kannst Pech haben wenn der Benutzer so intelligent ist und das einzige Fenster das enabled ist rausschiebt, dann hängt alles.

Sauberer ists imho mit eigenen Controls die du anzeigst und dann wieder kübelst wenn du sie nicht mehr brauchst, weniger Speicherverbrauch und übersichtlicher zu programmieren.
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz