假设我有一个不同类的对象集合。每个类都有其UserControl DataTemplated在一个资源文件中。
现在我想使用ItemsControl来显示这个集合,但我希望每个项周围都有一个Border或Expander。
我期望像这样的东西可以工作:
但是 ContentPresenter 似乎选择了 ItemTemplate,因为我遇到了堆栈溢出的问题。
如何在 ItemTemplate 中获取每个项目的 DataTemplate?
现在我想使用ItemsControl来显示这个集合,但我希望每个项周围都有一个Border或Expander。
我期望像这样的东西可以工作:
<ItemsControl ItemsSource="{Binding MyObjects}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Border BorderBrush="Black" BorderThickness="3">
<ContentPresenter/>
</Border>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
但是 ContentPresenter 似乎选择了 ItemTemplate,因为我遇到了堆栈溢出的问题。
如何在 ItemTemplate 中获取每个项目的 DataTemplate?