Regular Windows Forms data-binding can only bind to the properties directly belonging to each list item. This post explains how to bind to properties of properties (and so on, recursively) by creating a special collection class that exposes nested properties using ITypedList and PropertyDescriptor. You can use AggregationBindingList as a data source for the ComboBox, ListBox and DataGridView controls. Continue reading