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).