Laden...

[.NET] Forms als Childs..

Erstellt von Stu42 vor 17 Jahren Letzter Beitrag vor 17 Jahren 2.540 Views
S
Stu42 Themenstarter:in
506 Beiträge seit 2006
vor 17 Jahren
[.NET] Forms als Childs..

Hallo Leute,

da in der MFC alle Controlls von der Klasse CWnd abgeleitet sind, kann man dort sehr schön alle CWnd´s auch als Kindfenster erstellen.

Also kann ich mir dort z.B. ein StandartDialog in einem Dialog hineinladen, und somit noch einige erweiterungen einbauen.

Das müsste doch irgentwie auch mit den Forms gehen oder? So dass ich mir z.B. nen Standartdialog als Child ( also als Controll) in eine Form lade.

Bin über jede Hilfe dankbar.

Gruß Stu

49.485 Beiträge seit 2005
vor 17 Jahren

Hallo Stu42,

einfach MdiParent des Dialogs setzen.

herbivore

S
Stu42 Themenstarter:in
506 Beiträge seit 2006
vor 17 Jahren

muss ich dann sagen :

(ColorDialog1 as Form).MDIchildren = this`?

denn das funktioniert nicht? muss ich vorher nicht noch etwas machen?

308 Beiträge seit 2005
vor 17 Jahren

Hallo Stu42,

Wenn ich dich richtig verstehe wilst du ein Form innerhalb eines anderen Forms als Control verwenden?
Dann musst du nur die TopLevel Eigenschaft auf false setzen.

S
Stu42 Themenstarter:in
506 Beiträge seit 2006
vor 17 Jahren

jau genau, eine Froms als Controll.

Könntet íhr mir da vieleicht ein Code beispiel geben?

Dann wenn folgendes mache:


Form2 myform = new Form2();
myform.TopLevel = false;
myform.Show();

dann passiert leider gar nichts.

Ursprünglich wollte ich mir einen erweiterten OpenDialog erstellen.
Meine Taktik:
Den OpenDialog nicht Modal aufrufen, sondern halt als ein Controll auf einer Form (damit ich noch anderes Controlls hinzubasteln kann).

Eine TopLevel Eigenschaft bei einem OpenDialog könnte ich leider auch nicht finden.

308 Beiträge seit 2005
vor 17 Jahren

Form2 myform = new Form2();
myform.TopLevel = false;
// einfach wie ein Control hinzufügen
parentForm.Controls.Add(myform);

S
Stu42 Themenstarter:in
506 Beiträge seit 2006
vor 17 Jahren

mhh dann habe ich so eine art MDI.

naja das systemmenü wird man schon irgentwie ausblenden können.

Aber was mich nun mehr interessiert , ist, wie ich einen CommonDialog als Controll verwenden kann.

Jemand ne Ahnung?

308 Beiträge seit 2005
vor 17 Jahren

Hallo Stu42,

ich glaube, Du solltest versuchen dich von c/c++ und der Windows32 API zu lösen.

Schau dir mal das Framework in ruhe an. Da ist eigentlich alles dabei, was man für eine normale GUI Anwendung braucht. Zumindest die CommonDialogs wirst du nativ im .NET finden.

Wenn du versuchst deinen Win32 Programmierstil in .NET zu übernehmen wird da nix vernünftiges rauskommen. (Ich weiss, das klingt hart, ging mir aber auch am Anfang so...)