I know how to create a custom user control in WPF but how can I make it so that someone can provide an ItemTemplate?
I have a user control that is a mixture of several other WPF controls, one of them being a ListBox. I’d like to let the user of the control specify the content of the list box but I’m not sure how to pass that information through.
EDIT: The accepted answer works with the following correction:
<UserControl x:Class='WpfApplication6.MyControl' xmlns='http://schemas.microsoft.com/winfx/2006/xaml/presentation' xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml' xmlns:src='clr-namespace:WpfApplication6'> <ListBox ItemTemplate='{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type src:MyControl}}, Path=ItemsSource}' /> </UserControl>
You will want to add a DependencyProperty to your control. The xaml will look slightly different if you are deriving from UserControl or Control.
Here is xaml for a UserControl.
Here is xaml for a Control: