Pytanie : Zwyczaj kontrola wydarzenie forma

I kodować the UI dla kontrola (podstawowy klasa: UserControl) i teraz potrzebować wydarzenie the mateczny forma.  Oczywiście ponieważ the kontrola móc używać w różny forma I móc w postęp the imię the forma - w ten sposób dlaczego I wytwarzać niektóre wydarzenie (lub wiadomość), przechodzić w ten sposób the rodzic i mieć the rodzic w ten sposób?


(W C++ I właśnie tworzyć mój swój wiadomość i używać PostMessage z mateczny okno)

Odpowiedź : Zwyczaj kontrola wydarzenie forma

Ty potrzebować twój swój wydarzenie i the mateczny forma ono. Prosty przykład using standardowy EventHandler (ty potrzebować twój swój delegat/eventargs grupować jeżeli ty chcieć obyczajowy informacja z twój wydarzenie):
(1):
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
// użytkownik kontrola
    jawny częściowy klasowy MyUserControl: UserControl
    {
        jawny wydarzenie EventHandler SomethingHappened;

        jawny MyUserControl ()
        {
            InitializeComponent ();
        }

        intymny pustka button1_Click (przedmiot nadawca, EventArgs e)
        {
            OnSomethingHappened ();
        }

        ochraniać kawitacyjny OnSomethingHappened ()
        {
            jeżeli (SomethingHappened! = null)
                SomethingHappened (eventArgs, nowy EventArgs ());
        }
    }


'/rodzic forma
intymny pustka Form1_Load (przedmiot nadawca, EventArgs e)
{
    myUserControl1.SomethingHappened += nowy EventHandler (myUserControl1_SomethingHappened);
}

pustka myUserControl1_SomethingHappened (przedmiot nadawca, EventArgs e)
{
    MessageBox.Show ("Coś zdarzać się");
}
Inne rozwiązania  
 
programming4us programming4us