Tableau d'objets en .Net

cs_radada Messages postés 488 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 21 avril 2009 - 13 nov. 2003 à 19:58
tmcuh Messages postés 458 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 18 avril 2009 - 1 août 2004 à 13:53
Salut ; )

Dites moi, je commence le .net et y'a un truc qui me saoule. Comment on fait pour faire des tableaux d'objet au niveau design. Dans VB6, qd on fait un Copier/Coller d'un objet, il est proposé de faire un tableau afin de gérer un ensemble d'objet. Dans .Net, quand on fait un copier/coller, il crée direct un nouvel objet. De plus, il n'existe pas de propriété "index". Avec 50 boutons, ça me serait utilie lol :D. Comment s'est-y qu'on fait?? ; )). Merci d'avance

6 réponses

cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
13 nov. 2003 à 20:16
La propriété "index" n'existe plus dans .net
Si tu as 50 boutons, tu as 50 noms différents.

Mais tu peux faire pointer les 50 evènement en complétant Handles

Private Sub MaProcedure(ByVal sender As System.Object, ByVal e As System.EventArgs) _
Handles Button1.Click, Button2.Click

End Sub
0
cs_radada Messages postés 488 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 21 avril 2009 1
13 nov. 2003 à 20:23
Euh.. Merci mais si j'abuse, tu peux être un peu + explicite, je débute juste en .net et en VB6 aussi accéssoirement :D:D. En tout cas, merci pour ta rapidité ; )
0
cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
13 nov. 2003 à 20:40
Sur un Form tu places 3 boutons (Button1, Button2, Button3)
Tu copies et colles cette sub
Tu fais tourner et clic sur chaque bouton
Grace à "Handles Button1.Click, Button2.Click, Button3.Click" c'est la sub SurClick qui est chaque fois appelé.

Private Sub SurClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click, Button2.Click, Button3.Click
MessageBox.Show("Text: " & CType(sender, Button).Text & " Name: " & CType(sender, Button).Name)
End Sub
0
cs_phil23 Messages postés 79 Date d'inscription mardi 23 septembre 2003 Statut Membre Dernière intervention 14 juillet 2005 1
13 nov. 2003 à 20:58
Je repense à ton problème. Si tu as vraiment beaucoup de boutons il est plus facile de les créer dynamiquement (dans le code) que dans le design.

Essaie ceci et tu seras convaincu. AddHandler et mieux que le Handles de l'exemple précédent quand tu as beaucoup de contrôles.
Sur un Form place un bouton et colle ce code.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim iCompteur As Integer = 0
Dim pPosition As New Point(10, 10)
For iCompteur = 1 To 9
Dim x As New Button
' Propriété
x.Name = "bt_" + iCompteur.ToString()
x.Text = "Bouton " + iCompteur.ToString()
x.Width = 150
x.Height = 20
x.Location = New Point(pPosition.X, pPosition.Y)
pPosition.Y += x.Height + 5
' Ajoute un évenement
AddHandler x.Click, AddressOf MesBouton_Click
' Ajoute a la collection des controles
Controls.Add(x)
Next iCompteur
End Sub

Private Sub MesBouton_Click(ByVal sender As Object, ByVal e As EventArgs)
If TypeOf sender Is Button Then
MessageBox.Show(CType(sender, Button).Text)
End If
End Sub
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_radada Messages postés 488 Date d'inscription lundi 15 septembre 2003 Statut Membre Dernière intervention 21 avril 2009 1
13 nov. 2003 à 22:32
merci bcp, j'essaie tout ça demain matin. Merci ;) ;) ;)
0
tmcuh Messages postés 458 Date d'inscription dimanche 22 décembre 2002 Statut Membre Dernière intervention 18 avril 2009
1 août 2004 à 13:53
Merci beaucoup pour cette source, qui m'as éclairait sur un point. Mais pourquoi est-ce qu'il ont supprimer l'indexation, c'était quand meme vachement plus pratique que tout faire par code en dynamique... je ne les comprendrais dont jamais

Amicalement TMCUH
0
Rejoignez-nous