コード例 #1
0
        //PRZYCISKI


        //przycisk Wyślij
        private void praca_wyslij_Click(object sender, EventArgs e)
        {
            Moje_Arg_Wydarzen Arg_Tabeli = new Moje_Arg_Wydarzen();//tworzymy egzemplarz klasy Moje_Arg_Wydarzen o nazwie Arg_Tabeli (czyli tworzymy argumenty dla wydarzenia)

            //przypisujemy argumentom wydarzeń wartość
            string[] rekord = TworzenieRekordu(IleGroupBoxwOknie(ActiveForm));    //dodajemy wiersz do tabeli
            Arg_Tabeli.wiersz = rekord;
            string[] etykietki = DodawanieEtykiet(IleGroupBoxwOknie(ActiveForm)); //dodajemy etykiety kolumnom
            Arg_Tabeli.etykiety = etykietki;

            WyzwalaczUzupelnianie_obserwacji(Arg_Tabeli);    //wywołujemy metodę wyzwalającą wydarzenie (let it happen!)


            //dodajemy MessageBoxa, by poinformować o wypełnieniu ankiety i możliwości kolejnego jej wypełnienia
            if (MessageBox.Show("Ankieta: Praca została wypełniona i wysłana do bazy danych. \n Czy chcesz wypełnić ją ponownie?", "Kolejne wypełnienie",
                                MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                ActiveForm.Close(); //zamykam obecne okno i otwieram nowe (mniej klikania niż przez menu)
                Praca praca2 = new Praca();
                praca2.Show();
                //to samo co w oknie głównym, tylko robione z poziomu wywołania tego okna za pomocą przycisku wyślij
                praca2.Uzupelnianie_obserwacji += new EventHandler <Moje_Arg_Wydarzen>(praca2_Uzupelnianie_obserwacji);
            }

            else
            {
                ActiveForm.Close(); //zamykam to okno po prostu
            }
        }
コード例 #2
0
 //wyzwalacz wydarzenia Uzupelnianie_obserwacji będący metodą (o nazwie WyzwalaczUzupelnianie_obserwacji), której argument to e z klasy Moje_Arg_Wydarzen
 protected virtual void WyzwalaczUzupelnianie_obserwacji(Moje_Arg_Wydarzen e)
 {
     //jeśli wywołamy zdarzenie Uzupelnianie_obserwacji, to będzie ono działać na obiekcie wskazanym przez wskaźnik this (tu: Praca) a jego argumentami (wydarzenia Uzupelnianie_obserwacji) będą e
     if (Uzupelnianie_obserwacji != null)
     {
         Uzupelnianie_obserwacji(this, e);
     }
 }
コード例 #3
0
 //określamy co ten gostek ma robić, gdy wywoływane jest wydarzenie Uzupełnianie_obserwacji z praca1
 private void praca1_Uzupelnianie_obserwacji(object sender, Moje_Arg_Wydarzen e)
 {
     //jeśli są jakieś właściwości argumentów to dodajemy wiersz (który niesie wartości z praca1) obiektowi z okna Form1, tj. tabela_glowna
     if (e != null && e.wiersz != null && e.etykiety != null)
     {
         //dodajemy etykiety kolumnom
         int i = 0;
         foreach (DataGridViewColumn kol in Program.mainform.tabela_glowna.Columns)
         {
             if (kol.Name != "ankieta")
             {
                 kol.ToolTipText = e.etykiety[i];
                 i++;
             }
         }
         //dodajemy obserwacje
         Program.mainform.tabela_glowna.Rows.Add(e.wiersz);
     }
 }