Mam trzy przyciski, każde wywołanie btn_Clicked
na ich onClick
zdarzenia. W kodzie za chcę uzyskać identyfikator przycisku, który spowodował odświeżenie. Wiem, że mogę przypisać każdy przycisk, aby wywołać inną metodę, ale chciałbym nauczyć się trochę ASP.Net. Powiedz mi również, która metoda jest bardziej wydajna? Wywoływanie różnych metod za pomocą różnych kliknięć przycisków lub wywoływanie tej samej metody (jeśli funkcjonalność każdego przycisku jest taka sama).Jak wykryć, który przycisk został kliknięty w kodzie?
Odpowiedz
Prześlij obiekt nadawcy do przycisku, a następnie uzyskasz wszystkie właściwości.
Button clickedButton = (Button)sender;
mi powiedzieć także, która metoda jest bardziej efektywny? Wywoływanie różnych metod za pomocą różnych kliknięć przycisków lub wywoływania tej samej metody (jeśli funkcje każdego przycisku są takie same).
Jeśli funkcjonalność jest taka sama, lepiej jest mieć jedno zdarzenie, ponieważ nie trzeba replikować kodu. Pamiętaj o DRY principle.
Rozważmy następujący przykład:.
protected void Button1_Click(object sender, EventArgs e)
{
Button clickedButton = sender as Button;
if (clickedButton == null) // just to be on the safe side
return;
if (clickedButton.ID == "Button1")
{
}
else if(clickedButton.ID == "Button2")
{
}
}
Sprawdź, czy sender
argument swojej metody wywołania zwrotnego jest takie samo odniesienie jako przycisku interesuje
Button button1;
Button button2;
void OnClick(object sender, RoutedEventArgs args)
{
Button button = sender as Button;
if (button == button1)
{
...
}
if (button == button2)
{
...
}
}
To mnie zaskakuje. Myślałem, że == użyje 'Object.equals', co sprawdzi, czy są to te same referencje. Jaka część tego jest nieprawidłowa? – ceyko
To chyba najlepsza praktyka, aby to zrobić i tak (i prawdopodobnie konieczne), stąd moja edycja :) – ceyko
Chciałbym się spierać, czy jest to najlepsza praktyka, czy nie, co jeśli chcesz uzyskać dostęp do ButtonID lub inne informacje związane z jego właściwościami . Musisz rzucić obiekt do przycisku, tak jak teraz – Habib
- 1. C# Sprawdzanie, czy został kliknięty przycisk
- 2. WPF Jak znaleźć, który element ListBox został kliknięty?
- 3. Jak mogę znaleźć przycisk, który został kliknięty w zdarzeniu przesyłania formularza w jquery?
- 4. ASP.NET określić, który przycisk został kliknięty wewnątrz updatepanel w przypadku obciążenia strona
- 5. Przycisk kliknięcia PyQT kliknięty
- 6. Jak dowiedzieć się, który przycisk HTML został wciśnięty w moim serwletu?
- 7. Qt, PushButton, atrybut id? Dowolny sposób sprawdzenia, który przycisk został kliknięty:
- 8. Jak obsługiwać przycisk kliknięty w systemie Android?
- 9. Jak wykryć, czy przycisk usuwania UItableviewcell został ukryty?
- 10. Sprawdź, który element został kliknięty za pomocą jQuery
- 11. Jak mogę wykryć, że został kliknięty przycisk zamknięcia (X) w oknie dialogowym interfejsu użytkownika jQuery, niezależnie od zdarzeń windowclose/dialogbeforeclose?
- 12. Jak sprawdzić, który znacznik został kliknięty w Google Maps v2 na Androida?
- 13. MVC który przedkłada przycisk został naciśnięty
- 14. Jak sprawdzić, który segment został użyty?
- 15. jak wykryć, który przycisk jest wciśnięty przy użyciu jQuery
- 16. Dlaczego Sweave zgłasza błąd w kodzie LaTeX, który został skomentowany?
- 17. Jak ustalić, który przycisk został naciśnięty na Androidzie
- 18. Ustal, który przycisk został naciśnięty w aplikacji Tkinter?
- 19. Jak wybrać przycisk, który ma zostać kliknięty na Robotium w oknie dialogowym alertu?
- 20. JOptionPane.showMessageDialog czekać, aż zostanie kliknięty przycisk OK?
- 21. Sprawdź, czy element został kliknięty lub zmieniony
- 22. Nie można wykryć zestawu buildpack, który został ustawiony dla Pythona?
- 23. Jak przechwycić przycisk Wstecz paska nawigacyjnego kliknięty w Xamarin Forms?
- 24. ostatni Przycisk arkusza działań nie zostanie kliknięty
- 25. Jak wykryć który UITableView przewija
- 26. Przycisk wstrzymania JavaScriptu do filmu z YouTube, który został sklonowany?
- 27. Znajdź jeżeli „anulować” został kliknięty na wejściu pliku
- 28. jQuery - uruchomienie funkcji na każdego elementu z wyjątkiem jednego, który został kliknięty
- 29. JavaScript: Dowiedz się, który element został kliknięty bez dołączania do niego jakiegokolwiek zdarzenia?
- 30. Określić, który obszar mapy (imageMap) został kliknięty przy użyciu JavaScript (lub jQuery)
Użyj obiektu nadawcy w przypadku treser. – ryadavilli
Dowiedz się mvc zamiast – Jeroen