See Also: IListSource Members
You typically use this interface to return a list that can be bound to a data source, from an object that does not implement IList itself.
Binding to data can occur at either run time or in a designer, but there are rules for each. At run time, you can bind to data in any of the following:
Implementer of IList, provided the implementer has a strongly typed IList.Item(int) property (that is, the Type is anything but object). You can accomplish this by making the default implementation of IList.Item(int) private. If you want to create an IList that follows the rules of a strongly typed collection, you should derive from CollectionBase.
Implementer of System.ComponentModel.ITypedList.
In a designer, you can initialize binding to System.ComponentModel.Component objects by following the same rules.