Cześć
Chciałbym zapytać się was o własną metodę, która ma wykonać się podczas gdy na button najedzie się myszką w własnym GUI. Przycisków ma być 3 i nie warto tworzyć 3 eventów a chce 1 do 3 buttonów. Czy mogę prosić o wskazówki?
Pozdrawiam
Cześć
Chciałbym zapytać się was o własną metodę, która ma wykonać się podczas gdy na button najedzie się myszką w własnym GUI. Przycisków ma być 3 i nie warto tworzyć 3 eventów a chce 1 do 3 buttonów. Czy mogę prosić o wskazówki?
Pozdrawiam
button1.MouseOver += MouseOverHandler;
button2.MouseOver += MouseOverHandler;
button3.MouseOver += MouseOverHandler;
lub w designerze tam gdzie masz eventy w comboboxie wybierasz dla każdego buttona ten sam handler.
dam1an napisał(a):
button1.MouseOver += MauseOverHandler;
button2.MouseOver += MauseOverHandler;
button3.MouseOver += MauseOverHandler;
lub w designerze tam gdzie masz eventy w comboboxie wybierasz dla każdego buttona ten sam handler.
Designer jest przereklamowany lepiej ręcznie napisać.
Dzięki
A, jak mogę rozpoznać, który z buttonów dostał zdarzenie?
MouseOverHandler(object sender, EventArgs e) //sender to to obiekt który wywołał zdarzenie
{
Button btn = sender as Button;//i masz swój button
}
Dziękuje
A tak właściwie to jakie są standardy tworzenia całego programu? Pisze się raczej GUI + eventy ręcznie czy poprzez designer? Czy macie jakąś stronę godną polecenia aby o tym poczytać?
Ja bym to robił w designerze, nie wiem skąd u @Riw ten uraz. Ewentualnie jak chcesz o czymś poczytać to o MVP.
Designer jest dobry, a kiedyś był jeszcze lepszy.
Mam tu na myśli sytuację, w której chcemy usunąć handler ze zdarzenia.
Zazwyczaj po prostu kasowałem metodę, a potem wchodziłem do designera wyczyścić pole z nazwą tej metody.
Niestety, od którejś wersji (2012?) nie można tego robić w tej kolejności, bo designer przy otwarciu bardzo się obraża że brakuje mu tej metody i wyświetla głupi komunikat, zamiast pozwolić naprawić - i trzeba się ręcznie przekopywać przez wygenerowany kod. Zmiana na minus.