Dans ce cas, la méthode avec le Panel fonctionnera très bien :ccool:
Version imprimable
Dans ce cas, la méthode avec le Panel fonctionnera très bien :ccool:
Bonsoir,
sauf erreur, tu testes si le contrôle est de type TextBox, puis tu tentes une conversion, celle ci me semble superflue (il y a peut être une raison, tu me le diras) :
et en condensé :Code:
1
2
3
4
5 For Each ctrl As Control In Me.Controls If TypeOf ctrl Is TextBox Then machaine = ctrl.Text End If Next
Ensuite pour différencier les TextBox, si les Panels ne conviennent pas, il y a leur propriété Tag qui peut servir à stocker des données propres au contrôle ou à un groupe de contrôles :Code:
1
2
3 For Each ctrl In Me.Controls.OfType(Of TextBox)() machaine = ctrl.Text Next
exemple :
si ctrl.Tag = "groupe1" alors je traite sinon je ne traite pas ...
Enfin ceci reste à tester.
La dernière méthode de compile pas chez moi. Mais en effet, le cast est inutile dans ce cas on l'on souhaite récupérer uniquement le texte.
C'est sans doute "TypeOf" au lieu de "Of"
Code:
1
2
3
4 For Each ctrl In Me.Controls.OfType(TypeOf TextBox)() machaine = ctrl.Text Next
Bonsoir,
bizarre
Sous VS 2008 pro, fw 3.5 SP1, j'ai testé ce code :
Il me retourne bien les TextBox appartenant par leur Tag au "Groupe1".Code:
1
2
3
4
5
6
7 Dim output1 As New System.Text.StringBuilder Dim query3 As IEnumerable(Of TextBox) query3 = Me.Controls.OfType(Of TextBox)().Where(Function(ctrl) ctrl.Tag.Equals("Groupe1") And Not ctrl.Tag.Equals(Nothing)) For Each ctrl As TextBox In query3 output1.AppendLine(ctrl.Text) Next MessageBox.Show(output1.ToString)
Salut tout le monde ,
je tiens à vous remercier pour votre aide et de m'avoir accorder votre temps. mais il me reste un tout petit problème :mouarf:
Bon J'ai réussie à récupérer les valeurs de mes Textboxe en utilisant le code que vous m'avez proposer, j'ai fais quelques modifications bien sur :
Le problème qui se pose c'est que en utilisant cette méthode mon tableau et remplit de la manière suivantes : TB1->TB2->TB7->TB8->TB3-TB4......Code:
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 Dim tab_coti(60) As String 'le tableau ou je dois stocké les valeurs des Textboxe Dim Last As Integer = 0 ' une variable de teste Dim i As Integer = 0 ' un simple compteur For Each ctrl As Control In Me.form1.Controls If Last = 0 Then If TypeOf ctrl Is TextBox Then Dim ValBox As TextBox = CType(ctrl, TextBox) If ValBox.Text = String.Empty Then ' si je rencontre un Textbox vide je sort de la boucle Last = 1 GoTo a Else machaine = ValBox.Text.ToString End If If i Mod 2 = 0 Then ' si le Textbox conteint l'année tab_coti(i) = machaine i = i + 1 Else tab_coti(i) = CDbl(machaine) ' si le Textbox contient le montant de cotisation i = i + 1 End If End If End If Next
Moi je le veux de cette maniéré : TB1->TB2->TB3->TB4.....
La forme de mes Textboxe est en miniature , j'attends vos réponses Merci :D
Euh alors là, une question :
Pourquoi ne pas utiliser une dataGridView ?
Oui j'ai pensé à ça mais comme je débute sur Asp/vb.net j'ai réussie seulement a afficher les données de ma table avec une requête SELECT mais je vois pas comment faire pour l'insertion :cry:, si vous connaissez une simple méthode pour le faire ou quoi que ce soit qui peut m'aider je suis prenant .
Code:
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 Dim tab_coti(60) As String 'le tableau ou je dois stocké les valeurs des Textboxe Dim Last As Integer = 0 ' une variable de teste Dim i As Integer = 0 ' un simple compteur For Each ctrl As Control In Me.form1.Controls If Last = 0 Then If TypeOf ctrl Is TextBox Then Dim ValBox As TextBox = CType(ctrl, TextBox) If ValBox.Text = String.Empty Then ' si je rencontre un Textbox vide je sort de la boucle Last = 1 GoTo a Else machaine = ValBox.Text.ToString End If If i Mod 2 = 0 Then ' si le Textbox conteint l'année tab_coti(i) = machaine i = i + 1 Else tab_coti(i) = CDbl(machaine) ' si le Textbox contient le montant de cotisation i = i + 1 End If End If End If Next
Bon courage a celui qui devra reprendre ce code...
Et surtout, les GOTO sont a bannir !
Et bien tu récupères tes cellules :
Puis tu les insères dans ta base de données avec une requête SQL.Code:maDGV.Rows(n°Ligne).Cells(n°Colonne).Value