Bonjour,
Je crée en WPF un formulaire qui génère dynamiquement des combobox nommées par le préfixe "CB_" puis le numéro de la combobox dans lesquelles sont inséré un événement.
Dans cet événement j'aimerais appeler toutes les combobox grâce au Findname pour lire leur contenu.
Le Findname me renvoie un objet null alors que si l'objet a été créé directement en xaml, le findname fonctionne très bien.
Voici le code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 'création de la combobox sub creationcombobox Dim MaCombobox1 As New ComboBox If EspaceValue = " " Then MaCombobox1.Name = "CB1_" & Right(Str(num), Len(Str(num)) - 1) Else MaCombobox1.Name = "CB1_" & Str(num) End If MaCombobox1.Height = 30 MaCombobox1.IsEditable = True MaCombobox1.VerticalContentAlignment = Windows.VerticalAlignment.Center Grid.SetRow(MaCombobox1, 1) Grid.SetColumn(MaCombobox1, 3) magrille.Children.Add(MaCombobox1) AddHandler MaCombobox1.MouseDoubleClick, AddressOf MethodeCombo1 End Sub ' Sub MethodeCombo1 Dim NomCB1 As String Dim CB1 As Object Dim MonCB1 As ComboBox NomGB = Convert.ToString("GB_" & monnum) GB = Me.FindName(NomGB) NomCB1 = Convert.ToString("CB1_" & monnum) CB1 = Me.FindName(NomCB1) If TypeOf CB1 Is ComboBox Then MonCB1 = TryCast(CB1, ComboBox) Item1 = MonCB1.Text Else MonCB1 = Nothing End If End Sub
Si quelqu'un a une piste à me donner pour pouvoir exploiter mes combobox...
Pour info, dans un premier temps, j'ai essayé de faire
Mais il me mets une erreur "Controls n'est pas un membre de MaFenetre"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 For Each ctrl In Me.Controls If TypeOf ctrl Is ComboBox Then End If Next
J'ai essayé d'ajouter des imports comme :
Imports System.Windows.Controls
mais sans succès.
C'est pour ça que je me suis rabattu sur le Findname.
Peut-être que la solution a cette erreur de controls me permettrait de résoudre plus facilement mon accès aux combobox.
Si quelqu'un a une proposition pour l'un ou l'autre des problèmes, je suis preneuse car bloquée la-dessus depuis un moment maintenant.
Un grand merci![]()
Partager