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

 

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

Form activation μέσα από ένα custom control

Îåêßíçóå áðü ôï ìÝëïò tsitouridis. Τελευταία δημοσίευση από το μέλος tsitouridis στις 05-09-2006, 19:37. Υπάρχουν 13 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  05-09-2006, 13:18 16291

    Hmm [^o)] Form activation μέσα από ένα custom control

    Έχω σε μια φόρμα ένα custom control. Σε κάποιο σημείο του λέω this.ParentForm.Activate(). Όμως δεν γίνεται trigger το FormActivate event. Πώς μπορώ να το επιλύσω.

     

    Ευχαριστώ

  •  05-09-2006, 13:54 16295 σε απάντηση της 16291

    Απ: Form activation μέσα από ένα custom control

    Δεν υπάρχει τέτοιο event. Εννοείς το Activated event;

    Αυτό το event εκτελείται όταν η φόρμα ενεργοποιείται, είτε με κώδικα είτε όταν την ενεργοποιεί ο χρήστης. Δεν εκτελείται όταν καλέσεις την Activate και η φόρμα είναι ήδη ενεργοποιημένη.


    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  05-09-2006, 14:16 16301 σε απάντηση της 16295

    Yes [Y] Απ: Form activation μέσα από ένα custom control

    Αυτό εννοώ. Πώς θα μπορέσω να το κάνω trigger μέσα από το custom control??????????
  •  05-09-2006, 15:08 16313 σε απάντηση της 16301

    Απ: Form activation μέσα από ένα custom control

    Το event γίνεται trigger όταν ενεργοποιείται η φόρμα. Αν είναι ενεργοποιημένη ήδη δεν πρέπει να γίνει trigger. Περιέγραψε αυτό που θέλεις να κάνεις μήπως και υπάρχει κάποια άλλη λύση;
    Dimitris Papadimitriou
    Software Development Professional
    dotNETZone.gr News

    Οι απαντήσεις παρέχονται για συγκεκριμένες ερωτήσεις και χωρίς καμιά εγγύηση. Διαβάστε επίσης τους όρους χρήσης.
  •  05-09-2006, 15:41 16315 σε απάντηση της 16313

    Απ: Form activation μέσα από ένα custom control

    Έχεις κώδικα στο activate της φόρμας και θέλεις να τον κάνεις να εκτελεστεί από το custom control;


    Vir prudens non contra ventum mingit
  •  05-09-2006, 15:42 16316 σε απάντηση της 16313

    Geeked [8-|] Απ: Form activation μέσα από ένα custom control

    Λοιπόν όταν ανοίγει η φόρμα εκτελεί κάποια πραγμματάκια που είναι στο Activated event. 'Εχω ένα custom button για να κάβω διαγραφή μίας εγγραφής που μου βγάζει ένα messagebox. Αν ο user πεί OK, τότε γίνεται η διαγραφή και θέλω η φόρμα να εκτελέσει πάλυ το Activated event για να γανεί η αλλαγή. Θα μου πείς γιατί δεν το κάνεις με το χέρι είναι μια απλή λεξούλα. Η απάντηση είναι απλή. όλες οι φόρμες μου ειναι φτιαγμένες με τον ίδιο τρόπο και έχουν το ίδιο κουμπί. Γιατί να γράφω κώδικα (έστω και 1 λέξη) όταν το control μπορεί να κανεί την δουλειά αυτή με 1 μόνο εντολή σε 1 και μόνο σημείο?

  •  05-09-2006, 15:44 16317 σε απάντηση της 16315

    Stick out tongue [:P] Απ: Form activation μέσα από ένα custom control

    yeap!!!! Αλλά είμαι και τεμπέλης χεχεχεχεχε

  •  05-09-2006, 15:51 16320 σε απάντηση της 16317

    Απ: Form activation μέσα από ένα custom control

    Smile Η τεμπελιά είναι καλή, σε κάνει εφευρετικό, αλλά μερικές φορές χρειάζεται να κουνίσεις και λίγο το χέρι σου...

    Μπορείς να βάλεις τον κώδικα του event σε ένα sub/function και να το καλείς και από το Activate event και από το custom control. Εναλλακτικά, μπορείς να κάνεις προσθέσεις έναν handler (AddHandler) όπου θα συνδέσεις το event του custom control με το sub του Activate event.


    Vir prudens non contra ventum mingit
  •  05-09-2006, 15:57 16324 σε απάντηση της 16320

    Crying [:'(] Απ: Form activation μέσα από ένα custom control

    Αυτό το έχω κάνει απλά. Στον κώδικα του event handler του control μέσα στη φόρμα, του λέω Form_Activated(sender,e) και είμαι ok.... απλά έλεγα μήπως μπορώ να το αποφύγω και αυτό...... μάλλον ζητάω πολλά ε???????
  •  05-09-2006, 15:57 16325 σε απάντηση της 16317

    Απ: Form activation μέσα από ένα custom control

    Γεια σου,

    μπορείς να κάνεις το εξής με διάφορες παραλλαγές οι οποίες να ταιριάζουν καλύτερα σε αυτό που θέλεις να κάνεις. Η κεντρική ιδέα είναι η εξής. Θα βγάλεις τον κώδικα που έχεις γράψει μέσα στο Activated event τις φόρμας και θα τον βάλεις μέσα σε κάποια Sub or Function που θα δημιουργήσεις. Οπότε από το Event θα καλείς την Sub ή την Function.

    Αν κατάλαβα καλά ο συγκεκριμένος κώδικας θέλεις να καλείτε και από κάθε σημείο της εφαρμογής σου. Αυτό μπορείς να το πετύχεις με διάφορους τρόπους. Δεν θέλω να επεκταθώ αναλυτικά, αλλά απλά θα σου πω ότι μπορεί να μπεί είτε σε ένα module είτε μέσα σε class είτε όπου αλλού θέλεις εσύ (π.χ μέσα στον κώδικα μίας φόρμας.) Ποιος τρόπος σου ταιριάζει καλύτερα εσύ θα το επιλέξεις.
  •  05-09-2006, 16:00 16326 σε απάντηση της 16324

    Απ: Form activation μέσα από ένα custom control

    Μπορείς να κάνεις το κόλπο με τον event handler αλλά αυτό εξαρτάται... Από το custom control, πότε καλείς το Form_Activated?


    Vir prudens non contra ventum mingit
  •  05-09-2006, 16:07 16327 σε απάντηση της 16326

    Geeked [8-|] Απ: Form activation μέσα από ένα custom control

    private void mSLeft_ItemClicked(object sender, ToolStripItemClickedEventArgs e)

    {

    if (e.ClickedItem.Tag.ToString() == "DELETE")

    {

    if (Messages.GlobalVerification(ButtonActionType.Delete) == DialogResult.Yes)

    {

    ParentForm.Refresh();

    ParentForm.Cursor = Cursors.WaitCursor;

    doAction(sender, e);

    ParentForm.Activate();

    ParentForm.Cursor = Cursors.Arrow;

    }

    }

    else doAction(sender, e);

    }

    private void doAction(object sender, ToolStripItemClickedEventArgs e)

    {

    if (null != m_ItemIsClicked) m_ItemIsClicked.Invoke(sender, new LeftMenuEventArgs(e.ClickedItem.Tag.ToString(), e.ClickedItem.Name));

    }

  •  05-09-2006, 18:53 16336 σε απάντηση της 16327

    Απ: Form activation μέσα από ένα custom control

    Όχι, βλέπω ότι δεν γίνεται εύκολα να λύσεις το πρόβλημα ώστε να απιοφύγεις το Form_Activated(sender,e). Ωστόσο θα σου πρότεινα τώρα που είσαι στη φάση της ανάπτυξης να κάνεις τον κόπο και να αλλάξεις τον κώδικα ώστε να γίνει σωστά κάνοντας αυτό που λέγαμε, να βάλεις τον κώδικα που εκτελείται στην Form_Activated σε μια νέα ρουτίνα που θα καλείται από την Form_Activated και την mSLeft_ItemClicked. Λίγος παραπάνω κόπος τώρα, ίσως είναι σωτήριος όταν αργότερα θα έρθει η ώρα της συντήρησης ή του refactoring...
    Vir prudens non contra ventum mingit
  •  05-09-2006, 19:37 16340 σε απάντηση της 16336

    Yes [Y] Απ: Form activation μέσα από ένα custom control

    ok... thanks.... an kai protimo na to kratiso etsi giati me voleuei na to douleuo etsi. einai etsi dialegmenes oi energies pou ektelounte oste na min xriazonte pote, ektos apo tin ekinisi tis formas kai se kapies periptosis gia na kanei auto-refresh as poume. Kinos stis mises formes mou, den xriazete na to kano, apla exo ftiaxei kai tis klassis etsi, oste kai an to kano na min iparxei provlima prokimeno na exo tin AKRIVOS idia domi gia oles tis fores (ite mou xriazete ite oxi) kai tin AKRIVOS idia domi gia ta classes mou.

    Pantos euxaristo poli me glitosate apo anousio psaximo!!!!!!

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems