I guess, you could create a class that defines an object to hold the various columns of information for a row and add that object to the list with some kind of overrided toString function. So that you can extract the properties of said object when it's selected in the list. But when you are talking about a listbox and using terms like
it seems more sensible for you to be using some type of control that handles multiple columns easily.
Left hand side is for subject, middle is the sender, right is the date