Erzeuge eine passende Klasse
Produkt (bzw. englisch
Product) und erstelle in deinem ViewModel eine passende Eigenschaft
ObservableCollection<Produkt> (welche du dann an die
ListBox bindest).
Vom ViewModel aus kannst du dann die benötigten Untereigenschaften des Produktes setzen (und dann z.B. entsprechend der 3-Schichten-Architektur auf die Logikschicht zugreifen, welche dann die Daten aus der Datenzugriffsschicht [z.B. Datenbank oder XML-Datei o.ä.] holt).
Ich hoffe mal, du verwendest schon
MVVM, ansonsten solltest du das dringend nachholen (also nicht weiter wie in WinForms arbeiten).
Edit: Als Einstieg kann ich das (englische)
MVVM Tutorial empfehlen (es verwendet
ItemsControl, welches die Basisklasse u.a. der
ListBox ist).