Συγνώμη για τα greeglish, αλλά σε πολλές των περιπτώσεων δεν δουλεύω πάνω στα δικά μου μηχανήματα.
Έχω γεμίσει τον κώδικα μου με events που σε γενικές γραμμές λειτουργούν καλά. Απλά κάποιες φορές γίνονται fire 2 -3 φορές, ή το χειρότερο; Γίνεται fire ένα custom event μέσα σε ένα custom control και με το F11 παρατηρώ ότι γίνεται fire (π.χ. από button click στο control), εκτελείτε ο κώδικας στην φόρμα, αλλά μετά ο έλεγχος του προγράμματος γυρνάει εκεί όπου έγινε fire το event, δηλαδή μέσα στο custom control, ίσα ίσα για να εκτελέσει το }. Το πρόβλημα βέβαια σε αυτή τη περίπτωση είναι ότι το focus δεν περνάει σε άλλο control πάνω στην φόρμα, αλλά γυρνάει στο ίδιο.
Από ότι έχω δει, υπάρχουν πολλοί τρόποι να φτιάξεις ένα event. Μπορεί κάποιος να κάνει ένα briefing, ή να μου πει πού μπορώ να ψάξω για να καταλάβω τί συμφέρει να χρησιμοποιώ.
Επί του παρόντος κάνω τα εξής :
private event EventHandler m_btExit;
public event EventHandler btExit_Pressed
{
add { m_btExit += new EventHandler(value); }
remove { m_btExit -= new EventHandler(value); }
}
private void btExit_Click(object sender, EventArgs e)
{
if (null != m_btExit) m_btExit.Invoke(sender, e);
}
Ευχαριστώ