I am developing various components, and regularly run into the need to have a property that has a \"one-to-many\" relationship, component-to-property-member. The components
If they are properties, you can descend from TCollection, and then the IDE and Object Inspector will automatically provide support for them via the TCollection Property editor.
TObjectList and TInterfaceList / IInterfaceList are my favorites. And there is TThreadList for thread-safe lists. All of them are available in Delphi 6 (or even before).