我有 3 个用户控件
控制 1
控制 2
控制 3
我有一个包含 ItemsControl 的堆栈面板
<UserControl.Resources>
<DataTemplate x:Key="Template1">
<my:UserControl1 Height="117"/>
</DataTemplate>
<DataTemplate x:Key="Template2">
<my:UserControl3 Height="117"/>
</DataTemplate>
<DataTemplate x:Key="Template3">
<my:UserControl3 Height="117"/>
</DataTemplate>
</UserControl.Resources>
<StackPanel Name="stackPanel3" Orientation="Vertical" VerticalAlignment="Bottom" Width="Auto">
<ItemsControl ItemsSource="{Binding BlocksForMonth.Blocks}" ItemTemplate="{StaticResource Template1}">
</ItemsControl>
</StackPanel>
BlocksForMonths.Blocks 是视图模型的列表。Blocks 类有一个名为 ClipType 的属性。如果clipType 为1,我想使用Template1。如果是 2,我想使用模板 2。如果是 3,我想使用模板 3
这些模板包含不同的用户控件
我怎样才能通过绑定来做到这一点?
我考虑了 1 个带有 3 个控件的模板,但我不知道如何绑定可见性?
在这个 XAML 中,我绑定到一个列表而不是单个项目
保罗