TIDGDBListView - the component inherited from TCustomListView.
Use component for filling ListView by data from dataset( TTable, TQuery, TStoredProc ). You can keep any information from record of dataset for each ListItem using FieldsList property.
You can easily create the edited ListView using property OnEdited. If you want to set unique picture or other properties for each ListItem than use property OnFillItem..
This component allows:
-to fill listview from dataset( TTable, TQuery, TStoredProc )
-to keep data from record of table in memory for each ListItem and get it in any time.
-to search the ListItem for specified data which you keep for it.
The help and more info you can get on the homepage.