WPF Data Binding on behalf of ItemsControl provides an elegant solution for collection of data types. All you have to do is simple as: < ListBox ItemsSource ="{ Binding Path =Items}" ... /> But what if you want to bind the same collection to a Panel, let say UniformGrid , WrapPanel or other custom panel? Trying to bind the Panel.Children collection using the same technique above, results in a big ERROR! And the reason is: Panel.Children is not designed to be bind, hence Children is...