Bonjour/Bonsoir à tous j'ai un petit problème pour mon projet, et j'aimerais résoudre ce problème avec vous.
En faite lorsque j'ajoute des éléments dans mon ListBox j'aimerais que ces items soient mis dans un TextBox par l'intermédiaire d'une variable de type String.
Voici les deux façon auquel j'ai réfléchis, mais qui posent problèmes:
Première méthode :
j'ai utilisé ce code :
Public CE As String
-------------------
Dim ceitem
As
Object
For
Each
ceitem
In
CEList.ItemsCE = CE + ceitem + vbCrLf
Next
Le problème c'est que lorsque j'ai par exemple
Salut 'puis que j'ajoute Bonjour, j'ai donc :
Salut
Bonjour
J'ai dans mon TextBox
Salut
Salut
Bonjour
Sinon j'ai essayé d'utiliser un fichier temporaire, avec un RichTextBox, que j'utilise aussi en parallèle :
For
r = 0 To CDList.Items.Count - 1RichTextBoxModeExpert.AppendText(CDList.Items.Item(r) & Environment.NewLine)
Next r
Dim fil
As
String = Application.StartupPath &
"\temp.txt"
J'ai testé les deux solutions que vous me proposez, mais pour une fois, car d'habitude elles fonctionnent très bien, cela n'a pas marché.
Mais en rélféchissant un peu, j'ai trouvé.
Je ne sais pas si c'est le meilleur code, mais le voici, si jamais cela pourrait servir à quelqu'un :
RichTextBoxModeExpert.Text =
""
For r = 0
To CDList.Items.Count - 1RichTextBoxModeExpert.AppendText(CDList.Items.Item(r) & Environment.NewLine)
CD = RichTextBoxModeExpert.Text
Next r
Sinon juste une petite question en passant, quelle est la différence entre : vbCrLf et Environnement.NewLine
Pourquoi utilisé un ficier temporaire avec un RichTextBox?? Si tu veux seulement updater ton texbox a chaque fois que tu ajoutes un élément dans ton listebox, tu peux utiliser les suggestions donnés plus haut. C'est plus simple et plus efficases. La solution de Keven.Ory est très éfficase.
Example
Tu fais une fonction toute simple qui vas updater un textbox a chaque fois que tu le désire et te retourner un string.
Controle Nom
textbox -----> txtListItem
listbox ------> lstCel
Private Function UpdateCellList() as string
Dim sTemp as String
sTemp=""
ForEach celItem As String in lstCel.Items
sTemp &= celItem & Environment.NewLine
Next
txtListItem.Text = sTemp
UpdateCelList = sTemp
End Function
Note
sa fait longtemps que je n'ai pas fait du VB et je ne l'ai pas devant
moi pour tester alors c'est possible que sa ne marche pas mais l'idée générale est la.
Pourquoi utilisé un ficier temporaire avec un RichTextBox?? Si tu veux seulement updater ton texbox a chaque fois que tu ajoutes un élément dans ton listebox, tu peux utiliser les suggestions donnés plus haut. C'est plus simple et plus efficases. La solution de Keven.Ory est très éfficase.
Example
Tu fais une fonction toute simple qui vas updater un textbox a chaque fois que tu le désire et te retourner un string.
Controle Nom
textbox -----> txtListItem
listbox ------> lstCel
Private Function UpdateCellList() as string
Dim sTemp as String
sTemp=""
ForEach celItem As String in lstCel.Items
sTemp &= celItem & Environment.NewLine
Next
txtListItem.Text = sTemp
UpdateCelList = sTemp
End Function
Note
sa fait longtemps que je n'ai pas fait du VB et je ne l'ai pas devant
moi pour tester alors c'est possible que sa ne marche pas mais l'idée générale est la.