C# 基于对象类型控制WPF树视图项的扩展

C# 基于对象类型控制WPF树视图项的扩展,c#,wpf,xaml,treeview,C#,Wpf,Xaml,Treeview,我试图控制WPF树视图中树视图项的扩展状态。使用HierarchycalDataTemplate块控制不同类型对象的显示:- <HierarchicalDataTemplate DataType="{x:Type self:TestCaseNode}" ItemsSource="{Binding ChildItems}"> <HierarchicalDataTemplate.ItemContainerStyle>

我试图控制WPF树视图中树视图项的扩展状态。使用HierarchycalDataTemplate块控制不同类型对象的显示:-

            <HierarchicalDataTemplate DataType="{x:Type self:TestCaseNode}" ItemsSource="{Binding ChildItems}">
                <HierarchicalDataTemplate.ItemContainerStyle>
                    <Style TargetType="{x:Type TreeViewItem}">
                        <Setter Property="IsExpanded" Value="False" />
                        <Setter Property="Background" Value="Red" />
                    </Style>
                </HierarchicalDataTemplate.ItemContainerStyle>
                <TextBlock Text="{Binding DisplayName}" Tag="{Binding .}" MinWidth="10"/>
            </HierarchicalDataTemplate>


            <HierarchicalDataTemplate DataType="{x:Type self:CmdLineNode}" ItemsSource="{Binding ChildItems}">
                <TextBlock Text="{Binding Name}" Tag="{Binding .}" MinWidth="10"/>
            </HierarchicalDataTemplate>


            <HierarchicalDataTemplate DataType="{x:Type self:MessagesNode}" ItemsSource="{Binding ChildItems}">
                <StackPanel Style="{StaticResource ResourceKey=StackStyle}">
                    <TextBlock Text="{Binding Name}" Tag="{Binding .}" MinWidth="10"/>

                </StackPanel>
            </HierarchicalDataTemplate>


这允许我指定TestCaseNode的子项(即CmdLineNode和MessagesNode)显示为未展开的红色背景。我要做的是使用默认值显示CmdLineNode项,即使用默认背景展开,仅使用消息未展开且使用红色背景的节点项。我只是不知道如何在XAML中做到这一点,而不使用代码隐藏。

你能发布你当前的输出截图吗。