A forward slash in a Binding.Path
means the current item from the parent collection, but that won't as an ItemsSource
value because it's not a collection:
<ItemsControl ItemsSource="{Binding /}"> <!-- This won't work here -->
You also need to define your inner ItemsControl.ItemTemplate
. Try something like this:
<ItemsControl ItemsSource="{Binding Children}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Vertical" />
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate> <!-- Bind to the whole data item (a collection) here -->
<ItemsControl ItemsSource="{Binding}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate> <!-- Display your BaseViewModel data items here -->
<YourXmlNamespacePrefix:YourControl DataContext="{Binding}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>