小编use*_*793的帖子

条件DataTemplate

这是我想要做的.我定义了2个数据模板,它们都引用了不同的用户控件.

<UserControl.Resources>
    <DataTemplate x:Key="myDataTemplate1">
        <Border BorderBrush="Black" BorderThickness="1">
            <myUserControl1 />
        </Border>
    </DataTemplate>
    <DataTemplate x:Key="myDataTemplate2">
            <Border BorderBrush="Black" BorderThickness="1">
                <myUserControl2/>
            </Border>
    </DataTemplate>
</UserControl.Resources>
Run Code Online (Sandbox Code Playgroud)

我使用这些数据模板使用ItemsControl显示项目列表,如下所示:

<ItemsControl x:Name="myItemList" ItemTemplate="{StaticResource myDataTemplate1}">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate />
    </ItemsControl.ItemsPanel>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)

我希望ItemTemplate有条件地是myDataTemplate1或myDataTemplate1,具体取决于整数变量的值分别为1或2.

我应该使用DataTriggers吗?还是有其他方法可以做到这一点?感谢帮助.

wpf wpf-controls

30
推荐指数
1
解决办法
2万
查看次数

标签 统计

wpf ×1

wpf-controls ×1