Clearing custom components in TableListBox

with the ListBox class, the best thing to do is make dynamic components that aren’t owned (the class that calls refreshComponentForRow is who owns the component) but just reflect your data source.

Take a look here: ListBox Drag-To-Reorder [Solved] at how I store the data separately from the components that actually display the data.