Announcement

Collapse
No announcement yet.

Listbox vererben

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Listbox vererben

    hallo leute,

    ich möchte eine neue Listbox erstellen,bei der jedes item ausser dem Itemindex noch eine zweite id besitzen soll, dies soll ein beliebiger integer sein. die listbox vererben ist ja leicht, aber wie erweitere ich die listbox nun nun auf eine zweite id. standardwert für die id soll -1 sein.
    freue mich über vorschläge

    nepal

  • #2
    Hallo,

    warum das Rad jedes Mal neu erfinden? Die ListBox ist doch bereits in der Lage, einem Eintrag eine eigene Objektinstanz zuzuordnen, in der man <b>beliebig viele</b> eigene Daten speichern kann. Das folgende Beispiel demonstriert dies:
    <br><br>
    a) Klasse kapselt die eigenen Daten ein
    <pre>
    Public Class OSListBoxObject
    Public FirstName As String
    Public LastName As String
    Public Age As Integer
    <br>
    Public Sub New()
    End Sub
    <br>
    Public Sub New(ByVal firstName As String, ByVal lastName As String, ByVal Age As Integer)
    Me.FirstName = firstName
    Me.LastName = lastName
    Me.Age = Age
    End Sub
    <br>
    Public Overrides Function ToString() As String
    Return FirstName & " " & LastName
    End Function
    End Class

    </pre>
    b) Listbox wird mit den Daten gefüllt
    <pre>
    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
    Me.ListBox1.Items.Add(New OSListBoxObject("Andreas", "Kosch", 40))
    Me.ListBox1.Items.Add(New OSListBoxObject("Bernd", "Ritz", 43))
    Me.ListBox1.Items.Add(New OSListBoxObject("Wolfgang", "Regel", 55))
    End Sub
    </pre>
    c) Zugriff auf die Daten
    <pre>
    Private Sub ListBox1_SelectedValueChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ListBox1.SelectedValueChanged
    Dim aObj As OSListBoxObject
    aObj = CType(ListBox1.SelectedItem, OSListBoxObject)
    StatusBar1.Text = String.Format("{0} - {1}", ListBox1.Text, aObj.Age.ToString())
    End Sub
    </pre>
    Siehe dazu auch <i>http://entwickler.com/itr/features/psecom,id,145,nodeid,76.html</i&gt

    Comment


    • #3
      hallo andreas,

      vielen dank, ist genau was ich
      suchte und man kann dieses listboxobjekt ja
      dann auch bei comboboxen benutzen.

      viele grüße
      nepa

      Comment

      Working...
      X