Bir kontrol dizisi oluşturmak mümkün mü? Dizideki denetimlerin birden çok aynı olay işleyicisini paylaşırsa, bir denetimin dizinini almanın bir yolu var mı? Kevins yorum dayanarakC# bir dizi kontrol yaratın
5
A
cevap
7
Bu kesinlikle yapmak mümkündür. Bu olayda olay işleyicisini paylaşmak oldukça kolaydır çünkü olayı ortaya çıkaran Button
olay arızasının bir parçası olarak gönderilir. Bu sender
değeri olacaktır ve burada bir Button
geri dökülebilir bazı örnek kodunu
class Form1 : Form {
private Button[] _buttons;
public Form1(int count) {
_buttons = new Button[count];
for (int i = 0; i < count; i++) {
var b = new Button();
b.Text = "Button" + i.ToString()
b.Click += new EventHandler(OnButtonClick);
_buttons[i] = b;
}
}
private void OnButtonClick(object sender, EventArgs e) {
var whichButton = (Button)sender;
...
}
}
+0
Bu çözüm benim için çalışıyor. Tam olarak aradığım şey bu. – Kevin
4
:
foreach(Button b in MyForm.Controls.OfType<Button>())
{
b.Click += Button_Click;
}
void Button_Click(object sender, EventArgs e)
{
Button clickedButton = sender as Button;
}
İlgili konular
- 1. Bir deque ve yineleme kullanarak tüm olası kombinasyonları yaratın C++
- 2. Kontrol sözlükleri bir dizi değeri dizisi Bir dizi (öğeler) sahip
- 3. İki hedefle kaynak yaratın
- 4. C# linq - farklı bir dizi
- 5. C iki boyuttan oluşan bir dizi yazdırma
- 6. Kotlin'de bir soyut sınıf örneği yaratın
- 7. Program özellikli bir sözlük özelliği yaratın
- 8. JSON yanıt öğesinin bir dizi olup olmadığı nasıl kontrol edilir?
- 9. Dizi dizini, c
- 10. C++: normal dizi referans
- 11. C# Dizi Harita/Ruby
- 12. XDocument: Koşullu olarak yeni XElement yaratın
- 13. C yapısındaki dizi
- 14. C# dizi Doğrusal Arama
- 15. Global dizi pencere C#
- 16. dikdörtgen dizi C
- 17. WPF'de Seç ve Sürükle arasında fark yaratın
- 18. kontrol bir dize, bir dizi halinde varsa duyarsızca
- 19. java'da bir dosya okuyor ve dizi listesini kontrol ediyor
- 20. Amaç-C tipi bir blok kontrol edin?
- 21. ConvertTo-JSON bir dizi ile bir dizi
- 22. C# veri hizalamasını kontrol edin
- 23. IntelliJ içinde Test Sınıfı Yaratın
- 24. React üzerinde fark yaratın React
- 25. İki (junit) test fonksiyonu yaratın
- 26. C++ bir dizi işaretçi için bellek ayırma
- 27. C# datagridview sütununa bir dizi içine
- 28. C++: bir dizi için yapıcı başlatma listesi?
- 29. excelfile "* .xlsx" den bir dizi içine C#
- 30. Belirli bir aralık için dizi değerlerini C#
tanımlamak Lütfen bileşenleri. Belki bir kod örneği yardımcı olur. –
örneğin: Aynı tıklama olayını paylaşan bir formda 30 düğmenin olmasını istiyorum – Kevin
Tıklatma olayının gönderici parametresi, tıklamayı oluşturan düğmedir, dolayısıyla dizinin alınması Array.IndexOf olur (buttonArray, gönderici)) '' – shf301