Avatar billede masc Nybegynder
16. april 2004 - 17:15 Der er 5 kommentarer

"skjult" ID på en ListView control.

Hvordan kan jeg aggive et skjult ID til min Listview.
Vil gerne kunne clicke på en forekomst som så skal have det ID som den har i DB'en...

Hvordan angiver / aflæser jeg sådanne værdier ???
Avatar billede peterfup Nybegynder
19. april 2004 - 17:54 #1
Hvis du f.eks. bruger en DataTable som DataSource propertien på dit ListView har du to elementer du kan bruge:

listView.ValueMember og listView.DisplayMember

F.eks. en DataTable med to kolonner: id og name:

listView.DataSource = [din DataTable]
listView.ValueMember = "id"
listView.DisplayMember = "name"
listView.DefaultView.Sort = "name ASC"

Så henter du værdien ud med listView.SelectedValue

/PeterFup
Avatar billede masc Nybegynder
21. april 2004 - 16:16 #2
Findes de også på ListView... er det ikke kun ListBox og ComboBox ????

Eller er det mig som er blank...
Avatar billede peterfup Nybegynder
22. april 2004 - 22:45 #3
He He...
Det er lige mig som sover!

Jeg finder lige den rigtige løsning til dig i morgen.
Man ka da heller ikk huske noget i hovedet mere!

/PeterFup
Avatar billede peterfup Nybegynder
23. april 2004 - 08:58 #4
Me.viewFolder.BeginUpdate()
                Me.ListView.Items.Clear()

                Dim item As ListViewItem
               
                Dim count As Integer = 0
                Dim content As DataTable = [din DataTable]

                While count < content.Rows.Count
                    item = Me.ListView.Items.Add(content.Rows(count).Item("name"))
                    'item.SubItems.Add(content.Rows(count).Item("type")) 'Til flere kolonner i detailView
                    item.Tag = content.Rows(count).Item("name")

                    count += 1
                End While

                Me.ListView.EndUpdate()

For at hente værdien ud igen:

If Not Me.ListView.SelectedItems.Item(0) Is Nothing
Dim id As Integer = CType(Me.ListView.SelectedItems.Item(0).Tag, Integer)

End If

Som du kan se kan man hente flere værdier ud hvis du har sat dit ListView til at kunne markere flere elementer ad gangen.

Prøv at se om ikk du kan bruge det.
Avatar billede peterfup Nybegynder
23. april 2004 - 08:59 #5
Hov ændring til linie 12 selvfølgelig:

Fra
    item.Tag = content.Rows(count).Item("name")

Til
    item.Tag = content.Rows(count).Item("id")
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester