L'idée est qu'il existe une zone de liste avec des éléments et que vous souhaitez modifier un élément au milieu de la liste. Vous sélectionnez cet élément et cliquez sur le bouton "Modifier" et un nouveau formulaire apparaît avec les données de l'article sélectionné précédemment à partir du premier formulaire prêt à être modifié dans une zone de texte. Après avoir modifié et cliqué sur OK, le second formulaire suppose de renvoyer cette chaîne modifiée au premier formulaire et d'insérer la chaîne modifiée dans le même emplacement au lieu de l'élément sélectionné à l'origine, de sorte qu'il semble avoir été modifié pour l'utilisateur.[VB.NET] Comment ajouter un élément de chaîne renvoyé par un autre formulaire à une zone de liste à un emplacement spécifique à la place d'un autre?
Répondre
Edit: Traduit le code pseudo au code VB.NET réel pour me rafraîchir la mémoire: D
string = InputBox("Enter text")
// Do whatever you want with the string
x = listBox.SelectedIndex
listBox.Items(x) = string
Vous pouvez Content
à la place de Text
aussi.
Merci, mais cette méthode est seulement bonne pour une seule ligne de texte. Il doit s'appliquer à la chaîne amener split avec array() de array et placé dans des zones de texte séparées sur le second formulaire et vice versa à droite au lieu de l'élément d'origine. – JohnnyCake
Ensuite, vous stockez la chaîne renvoyée par 'InputBox()' à variable, 'Split()' it, placez-les dans des emplacements corrects, modifiez-les si nécessaire et 'Join()' ou tout ce que vous voulez leur faire . –
D'accord, je vois. Mais il n'y a pas de propriété Text pour SelectedItem pour moi. – JohnnyCake
Assurez-vous que le formulaire qui s'affiche est Modal. Voici un exemple simple de ce que vous pouvez faire. (Cela suppose que vos éléments listbox sont des chaînes et est un exemple pour l'édition jusqu'à trois éléments listbox seulement. Si la liste va être vous beaucoup plus grand voudra poursuivre une architecture différente.)
Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Dim intTextboxCounter As Integer = 0
For Each i As Integer In Form1.ListBox1.SelectedIndices
Select Case intTextboxCounter
Case 0
TextBox1.Text = Form1.ListBox1.Items(i)
Case 1
TextBox2.Text = Form1.ListBox1.Items(i)
Case 3
TextBox3.Text = Form1.ListBox1.Items(i)
End Select
intTextboxCounter += 1
Next
End Sub
Lorsque cette charge il va faire défiler les éléments de la liste sélectionnée et mettre sa valeur dans une zone de texte. Pour mettre à jour les valeurs ...
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Dim intTextboxCounter As Integer = 0
For Each i As Integer In Form1.ListBox1.SelectedIndices
Select Case intTextboxCounter
Case 0
Form1.ListBox1.Items(i) = TextBox1.Text
Case 1
Form1.ListBox1.Items(i) = TextBox2.Text
Case 2
Form1.ListBox1.Items(i) = TextBox3.Text
End Select
Next
End Sub
- 1. Ajouter un élément de menu à une autre application
- 2. Ajouter un élément à une chaîne [] tableau
- 3. L'utilisateur sélectionne un élément dans la zone de liste déroulante, un autre élément est envoyé à la propriété de dépendance
- 4. SimpleXML: ajouter un arbre à un autre
- 5. Ajouter à la liste à partir d'un autre formulaire
- 6. Comment utiliser la valeur de la zone de texte d'un formulaire à un autre formulaire?
- 7. Itère un dictionnaire ajouter à un autre
- 8. ajouter un fichier à un autre
- 9. Comment puis-je ajouter un enfant à un nœud à un emplacement spécifique?
- 10. Comment ajouter une zone de liste déroulante à un DataGrid?
- 11. Avoir un emplacement de vérification SVN connecté à Codeplex et propager les mises à jour vers un autre emplacement de développement connecté à un autre référentiel SVN
- 12. VB.NET Ajouter continuellement un à une zone de texte
- 13. ajouter un élément APRÈS un autre?
- 14. Jquery: élément d'affichage par rapport à un autre
- 15. jQuery: Ajouter un élément après un autre élément
- 16. Comment afficher un élément HTML à un emplacement précis?
- 17. SharePoint déplacer par programme un élément de liste à un autre, est-ce possible?
- 18. Transmission d'un ID à un autre formulaire
- 19. drupal - ajouter une liste de sélection/option à un formulaire
- 20. Envoyer une frappe à un autre contrôle
- 21. Comment ajouter un élément générique à une zone de liste déroulante liée à une collection dans WPF
- 22. Java - Ajouter un objet à un arrayliste, puis ajouter un autre à l'arrayliste provoque l'écrasement du premier élément
- 23. Comment ajouter un attribut à un élément de schéma xml?
- 24. Comment ajouter un tableau à un autre tableau en PHP?
- 25. Comment ajouter un autre espace de noms à WCF SyndicationFeed?
- 26. Javascript ajouter un élément à tableau à l'index spécifique
- 27. lier un élément de travail tfs à un autre projet
- 28. Comment déplacer un élément d'un menu à un autre?
- 29. Accéder à un élément XAML à partir d'un autre XAML
- 30. Comment puis-je ajouter un élément à un ListView d'un autre thread sans provoquer une exception
Donc, fondamentalement, vous voulez modifier l'élément sélectionné dans la zone de liste en ouvrant un nouveau formulaire pour entrer la nouvelle valeur? –
Ouais, exactement. – JohnnyCake
Sauf que la chaîne est divisée() et placée dans des zones de texte séparées sur le second formulaire. Puis joignez() les valeurs modifiées et renvoyez-les comme une seule chaîne au premier formulaire et remplacez-le par l'élément d'origine de la zone de liste. – JohnnyCake