Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

Φόρμα μέσα σε Control

Îåêßíçóå áðü ôï ìÝëïò pontifikas. Τελευταία δημοσίευση από το μέλος maspr στις 05-04-2006, 09:48. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  30-03-2006, 12:57 11365

    Φόρμα μέσα σε Control

    Προσπαθώ να δημιουργήσω μια φόρμα που θα έχει ένα container μέσα στο οποίο θα μπορώ να δημιουργώ και να ανοίγω άλλες φόρμες(όπως όταν έχουμε πολλαπλά documents σε ένα word application ή κάτι σαν τον Enterprise Manager ston SQL server2000 όταν ανοίγεις tables).

    Αυτό που κάνω είναι να κάνω add στο container την φόρμα, αλλά τρώω exception ότι ένα top level control δεν μπορεί να μπεί σε άλλο control.

    Υπάρχει κάτι που μπορώ να κάνω?Γιατί δεν θέλω να δημιουργήσω ένα control σε στυλ φόρμας ακόμα.
  •  30-03-2006, 13:14 11366 σε απάντηση της 11365

    Απ: Φόρμα μέσα σε Control

    Η μια εναλλακτική σου, την οποία αν καταλαβαίνω καλά απορρίπτεις, είναι αντί για φόρμες να φτιάξεις user controls και να προσθέτεις αυτά στη φόρμα σου. Η λύση αυτή είναι κατά τη γνώμη μου πολύ καλή, γιατί και πιο "μοντέρνα" αισθητική μπορείς να πετύχεις, και μετά το user control να το ρίξεις πάνω σε μια άδεια φόρμα, και να το κάνεις φόρμα χωρίς κώδικα.

    Αν όμως θέλεις οπωσδήποτε να το κάνεις αλλιώς, τότε πρέπει η κεντρική σου φόρμα να είναι MDI parent (IsMdiContainer=true) και μετά, όταν δημιουργείς την child φόρμα να κάνεις:



    MyChildForm form = new MyChildForm();

    form.MdiParent  = myMainForm; // ή this

    form.Show();

    Έτσι θα έχεις το κλασικό MDI user interface.

     


    Νατάσα Μανουσοπούλου
  •  30-03-2006, 13:38 11368 σε απάντηση της 11366

    Απ: Φόρμα μέσα σε Control

    Αυτό που πρέπει να κάνεις έινα να έχεις μέσα στην Main Form ένα tabpage στο οποίο θα προσθέτεις tabs και στα panel τους θα βάζεις τα user controls όπως σου λέει και η mns και έτσι θα έχεις το User Interface που περιγράφεις.
    Ιωάννης Μανουσάκης
  •  30-03-2006, 13:38 11369 σε απάντηση της 11365

    Απ: Φόρμα μέσα σε Control

    Ωραία!

    Αλλά θέλω να εμφανίζω τις φόρμες μέσα σε ένα groupbox και να μην βγαίνει από αυτό.

    Με αυτόν τον τρόπο(και τις γνώσεις που έχω[λιγες]) έχω τις φόρμες μου να βολτάρουν στην μητρική και όχι στο groupbox.
  •  30-03-2006, 13:42 11370 σε απάντηση της 11368

    Απ: Φόρμα μέσα σε Control

    Βάλε το tabpage μέσα στο groupbox.
    Ιωάννης Μανουσάκης
  •  30-03-2006, 13:43 11371 σε απάντηση της 11369

    Απ: Φόρμα μέσα σε Control

    Το βρήκα!!

    MyForm item = new MyForm1();
    item.MdiParent = this;
    //groupBox1 είναι εκεί που το θέλω.
    item.Parent = groupBox1;
    item.Show();

    Ευχαριστώ Smile [:)]

  •  05-04-2006, 09:48 11574 σε απάντηση της 11365

    Απ: Φόρμα μέσα σε Control

    Από default, μία φόρμα δεν μπορεί να είναι child σε container. Βάλε:

    myForm.TopLevelControl = False

    Τώρα η φόρμα μπορεί να γίνει child cotrol. Επίσης :

    myForm.text = ""

    myForm.controlBox = False

    για να μήν 'εχει την εμφάνιση φόρμας.

    HTH

    Μάνος


    * * *
    Μάνος Ασπραδάκης
    maspr(at)freemail.gr
Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems