Nie chcę klikać przycisku. zamiast tego po prostu chcę uruchomić kod zdarzenia kliknięcia. jak to zrobiłbym?C# czy można wywołać zdarzenie click_click za pomocą kodu?
Odpowiedz
button1_click(null, new EventArgs());
I módlcie się, aby argument "nadawcy" nie był używany. –
, jeśli chcesz używać nadawcy, niż po prostu wstaw go zamiast wartości zerowej. – cichy
Spróbuj keybd_event z p/wywołać http://msdn2.microsoft.com/en-us/library/ms646304(VS.85).aspx
czasami zrobić poprzez faktycznie wywołanie funkcji obsługi zdarzeń, to gdybym rzeczywiście wprowadziły go.
Dosłownie nazywają to lubią:
button1_Click(this, new EventArgs());
Od wewnątrz lub na zewnątrz Form
gdzie Button
jest? Najprostszą rzeczą jest po prostu wywołanie funkcji:
Button1_Click(Button1, EventArgs.Empty);
Opcja: użyj PerformClick()
.
Proszę spojrzeć tutaj: How to: Call a Button's Click Event Programmatically.
Zaletą jest to, że zachowanie zdarzenia będzie dokładnie takie samo jak rzeczywiste kliknięcie przycisku (w przeciwieństwie do bezpośredniego wywoływania button1_click
).
Ale żadna z tych opcji nie jest najlepszym IMHO. Jeśli potrzebujesz wywołać kod obsługi zdarzenia, potrzebujesz nowej metody! Po prostu przekształć starą button1_click
w nową, standardową metodę i wywołaj ją z dowolnego miejsca.
+1: Zawsze zakładałem, że 'PerformClick' jest lepszy od bezpośredniego wywoływania obsługi przycisku, ponieważ platforma wie lepiej niż ty, co jest potrzebne. Odnosi się także do komentarza Ben Voigta o argumencie "nadawcy". – Powerlord
+1 dla refaktora starego button1_click, ma tak wiele sensu – Spooks
- 1. Czy można wywołać usługę internetową za pomocą indeksu javascript?
- 2. Czy możliwe jest formatowanie kodu C++ za pomocą VIM?
- 3. Jak wywołać zdarzenie ręcznie w języku C#?
- 4. Powiąż zdarzenie z elementem za pomocą czystego kodu JavaScript
- 5. Pobierz zmienne środowiskowe za pomocą kodu C
- 6. Testowanie jednostkowe kodu C++ za pomocą Javy
- 7. Jak wywołać zdarzenie dotyku?
- 8. Jak wywołać metody w C# dll z mojego kodu C?
- 9. Jak wywołać API w C# za pomocą angularjs
- 10. Czy można załadować i wykonać fragmenty kodu C# za pomocą DLR?
- 11. Czy można wywołać funkcję javascript z natywnego kodu (nie w wywołaniu zwrotnym) za pomocą PhoneGap i iOS?
- 12. Czy można wyśmiać funkcję C za pomocą pythona?
- 13. Dokumentowanie kodu C lub C++ za pomocą nowychb i LaTeX
- 14. Bluetooth: Wykryj zdarzenie za pomocą usługi Bluez
- 15. Czy można sortować tablice za pomocą preprocesora?
- 16. Jak wywołać funkcję CreateOleObject za pomocą dwscript?
- 17. Czy można wywołać metodę clearInterval() przed setInterval()?
- 18. Zarządzanie interfejsem sieciowym Linuksa za pomocą kodu C
- 19. Czy można wywołać API COM z Java?
- 20. Czy można wywołać moduł Pythona z ObjC?
- 21. Jak wywołać zdarzenie niestandardowe z Meteorsem JS
- 22. Przyspieszenie kodu Pythona za pomocą cythonu
- 23. Czy można przestawić dane za pomocą LINQ?
- 24. Czy można planować posty za pomocą Jekyll?
- 25. Czy można Paginować tabelę za pomocą jquery?
- 26. Czy można deserializować za pomocą Boost.Hana?
- 27. Czy można zastąpić zachowanie%% za pomocą __rmod__?
- 28. Czy można wyrazić chainl1 za pomocą aplikacji?
- 29. Czy można ustawić ImageSize za pomocą displayImage()?
- 30. Czy można manipulować listami za pomocą LINQ?
Krótka odpowiedź brzmi: tak! – abhi
Jeśli masz kontrolę nad kodem w module obsługi zdarzeń kliknięcia, prawidłową rzeczą jest wyodrębnienie tego kodu do oddzielnej metody, która może być wywołana z dowolnego miejsca. – snarf