Est-il possible de créer un tableau de contrôles? Est-il possible d'obtenir l'index d'un contrôle si plus d'un des contrôles dans le tableau partagent le même gestionnaire d'événements?C# créer un tableau de contrôles
5
A
Répondre
7
Ceci est certainement possible de le faire. Le partage du gestionnaire d'événements est assez facile à faire dans ce cas car le Button
qui a déclenché l'événement est envoyé dans le cadre des arguments d'événement. Ce sera la valeur sender
et peut être jeté en arrière à un Button
Voici quelques exemples de code
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
cette solution fonctionne pour moi. C'est exactement ce que je cherchais. – Kevin
4
Sur la base de commentaires Kevins:
foreach(Button b in MyForm.Controls.OfType<Button>())
{
b.Click += Button_Click;
}
void Button_Click(object sender, EventArgs e)
{
Button clickedButton = sender as Button;
}
Questions connexes
- 1. Impossible de créer un tableau en C#
- 2. Comment créer un tableau de boutons C#?
- 3. Tableau multidimensionnel de contrôles
- 4. C# Comment créer un tableau d'étiquettes
- 5. Créer dynamiquement un tableau en C#
- 6. Créer un tableau de fractions
- 7. Créer un tableau de grille
- 8. Créer un tableau redimensionnable de CGPoints dans l'objectif-c
- 9. C#: Utilisation d'un générique pour créer un tableau de pointeurs
- 10. Comment créer un tableau statique constant de chaînes dans C#?
- 11. Créer un tableau d'objet C# de longueur indéfinie?
- 12. pouvons-nous créer un tableau de hashtable dans C# .Net?
- 13. Créer des contrôles dynamiques
- 14. C - Tableau dans un tableau
- 15. C++: Comment créer un tableau en utilisant boost :: property_tree?
- 16. Comment créer un tableau d'images?
- 17. MySQL Créer un tableau récapitulatif?
- 18. Comment créer un tableau à partir d'un autre tableau?
- 19. créer un tableau js dynamiquement?
- 20. Créer un tableau avec la constante
- 21. Comment créer un nouveau tableau dans VB.NET?
- 22. Meilleure façon de stocker plusieurs contrôles dans un tableau
- 23. Comment créer un tableau de pointeurs?
- 24. pour créer un composant de tableau blanc
- 25. Suivi: Créer un tableau d'objets de classname
- 26. Meilleure façon de créer un tableau singleton
- 27. Créer un tableau de tableaux avec Linq
- 28. Comment créer un tableau de boutons Objet?
- 29. Comment créer un tableau de points?
- 30. Comment créer un tableau d'un tableau de structures
S'il vous plaît, définir les composants. Peut-être qu'un échantillon de code aiderait. –
par exemple: Je veux avoir 30 boutons sur un formulaire qui partagent le même événement de clic – Kevin
Le paramètre de l'expéditeur de l'événement click sera le bouton qui a généré le clic, donc obtenir l'index serait 'Array.IndexOf (buttonArray, expéditeur) ' – shf301