| Forum: VB.NET |
Thema:
Re: ListBox |
Von:
Klaas Wedemeyer (
18.12.2003 17:14) |
Hi
Ich bin mir nicht sicher ob ich Dich richtig verstanden habe:
Du willst pro Eintrag einen Wert anzeigen und eine Zweiten merken (für die spätere Verwendung)
Bei einer ListView wurde man das Tag des ListViewItem nehmen, um den Wert zuspeichern. Leider gibt es für ComboBoxen und Listbox kein Item und ein String hat keine Tag eigenschaft.
Benutze mal folgende Klasse:
Public Class ListBoxItem
Private mTag As Object
Private mText As String
Public Sub New(Optional ByVal Text As String = "", Optional ByVal Tag As Object = Nothing)
mText = Text
mTag = Tag
End Sub
Public Property Text() As String
Get
Return mText
End Get
Set(ByVal Value As String)
mText = Value
End Set
End Property
Public Property Tag() As Object
Get
Return mTag
End Get
Set(ByVal Value As Object)
mTag = Value
End Set
End Property
Public Overrides Function toString() As String
Return mText
End Function
End Class
--------------------------
Listbox füllen
myListBox.Items.Add(new Listboxitem("Zeile1", DataRow1)
myListBox.Items.Add(new Listboxitem("Zeile2", DataRow2)
myListBox.Items.Add(new Listboxitem("Zeile3", DataRow3)
ListBox Lesen
dim mySelectedDataRow as DataRow =CType(myListBox.SelectedItem, ListBoxItem).tag
Viel Glück, Klaas
Antworten
Vorsicht bei der Eingabe: Die Zeichen ' oder -- sind nicht erlaubt!