Search en change in listview

Status
Niet open voor verdere reacties.

bonnowagt

Gebruiker
Lid geworden
7 dec 2006
Berichten
445
Ik voeg op de volgende wijze items toe aan mijn listview
Code:
         Dim itm As ListViewItem
        Dim str(5) As String
        str(0) = TextBox1.Text
        str(1) = TextBox2.Text
        str(2) = TextBox3.Text
        itm = New ListViewItem(str)
        ListView1.Items.Add(itm)
        PictureBox1.Image = Image.FromFile(TextBox3.Text)

Vervolgens save ik deze items. Werkt natuurlijk prima. Ook verwijderen is geen probleem.

Mar hoe ik zoek en wijzig ik nu. Het listbox gebeuren ken ik wel redelijk maar bij een listview kom ik er niet uit. Bij een listbox deed ik het als volgt.
Code:
 Dim count As Integer = (ListBox1.Items.Count - 1)
        Dim words As String
        For a = 0 To count
            words = ListBox1.Items.Item(a)
            If InStr(words.ToLower, TextBox1.Text.ToLower) Then
                ListBox2.Items.Add(words)
            End If
            If InStr(words.ToLower, TextBox2.Text.ToLower) Then
                ListBox2.Items.Add(words)
            End If
        Next

Maar hoe doe ik dit nu met zoeken en wijzigen in een listview
 
Hi Doe ik zo
Wordt bij mij wel in textbox ingevuld.


Code:
 Function vervang() As Boolean
        With ListView1
            If Not .SelectedItems.Count = 0 Then '// check if item is selected.
                With .SelectedItems(0).SubItems(1)
                    If .Text = "" Then
                        Exit Function

                        ' MsgBox("No value for first SubItem, or No value in Column 2 for the selected item.")
                    Else
                        Static i As Integer = 0
                        ListView1.Items.Remove(ListView1.SelectedItems(0))
                        Dim newItem As New ListViewItem("No")
                        : newItem.SubItems.Add(Voornaam.Text)
                        : newItem.SubItems.Add(TextBox_Achternaam.Text)
                        : newItem.SubItems.Add(TextBox_Adres.Text)
                        : newItem.SubItems.Add(TextBox_Postcode.Text)
                        : newItem.SubItems.Add(TextBox_Plaats.Text)
                        : newItem.SubItems.Add(TextBox_Telefoon.Text)
                        : newItem.SubItems.Add(TextBox_Mobiel.Text)
                        : newItem.SubItems.Add(TextBox_Email.Text)
                        : newItem.SubItems.Add(TextBoxX1.Text)
                        ListView1.Items.Add(newItem)
                        i += 1
                        ' MsgBox("value found: " & .Text)
                    End If
                End With
            End If
        End With


    End Function
 
Ik gebruik dit voor het zoeken in een listbox:

Code:
    Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged

        For x As Integer = 0 To ListBox1.Items.Count - 1

            If ListBox1.Items.Item(x).ToString.ToLower.Contains(TextBox1.Text) Then
                ListBox1.SelectedItem = (ListBox1.Items.Item(x))
            End If

        Next
    End Sub
 
Hallo,

Ik heb jouw code voor het wijzigen goed bekeken en zag dus jouw principe. Het oude verwijderen, de tekst blijft dan wel in de textboxen staan, Deze veranderen en dan gewoojn de add manier toepassen en opslaan. Eigenlijk heel simpel. Heb dus wel mijn eigen aangepaste code gedaan. Weer wat geleerd en bedankt dus. Allen het zoeken levert wat meer problemen op het voorbeeld is voor een listbox. Ik ben wel zover dat ik kan zoeken en dat de listview alle items aangeeft door middel van een selectiebalk maar als je een lange lijst hebt moet je die dus wel allemaal bijlangs scrollen. Het liefst zou ik alle items die beantwoorden aan de zoeksleutelin de lijst bovenaan zien staan
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan