You should use a List, not an array, because you can't resize an array dinamically.
I don't know CustomListView (I prefer CheckedList).
If you can get the views in each item, as you wrote, you should write something like:
Dim lstSelected As List
lstSelected.Initialize
for x (or for Each, if it is possible with CustomListView)
' code to get the spinner and the button
lstSelected.Add(spinner.value & "," & button.text)
File.WriteList(Dir, FileName, lstSelected)
(Now I see how CustomListView works
)