如何使用wpf树视图删除边框

如何使用wpf树视图删除边框,wpf,treeview,Wpf,Treeview,我想显示,当我选择treeViewItem时,treeViewItem会更改背景。我删除树视图边框。但离开了树景背景。如何删除红色圆圈图像中的空间蓝色 我的XAML代码是: <UserControl.Resources> <Style x:Key="LibraryTreeViewItemStyle" TargetType="{x:Type TreeViewItem}"> <Style.Triggers>

我想显示,当我选择treeViewItem时,treeViewItem会更改背景。我删除树视图边框。但离开了树景背景。如何删除红色圆圈图像中的空间蓝色

我的XAML代码是:

<UserControl.Resources>
    <Style x:Key="LibraryTreeViewItemStyle"
           TargetType="{x:Type TreeViewItem}">
        <Style.Triggers>
            <Trigger Property="IsSelected" Value="true">
                <Setter Property="Foreground" Value="Black" />
            </Trigger>
            <Trigger Property="IsSelected" Value="false">
                <Setter Property="Foreground" Value="White" />
            </Trigger>
        </Style.Triggers>
        <Style.Resources>
            <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="White" />
            <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Green" />
        </Style.Resources>
    </Style>
</UserControl.Resources>

<TreeView x:Name="tv" HorizontalAlignment="Left" Height="195" VerticalAlignment="Top" Width="187"  Background="#FF213757"  ItemContainerStyle="{StaticResource LibraryTreeViewItemStyle}" BorderBrush="#FF1B1919" >

将TreeView填充更改为0默认值为1:


将TreeView填充更改为0默认值为1:

我只是在XAML调用中使用了BorderThickness=0

我的Xaml代码作为参考

    <TreeView x:Name="tvReports" BorderThickness="0" Grid.Row="0" ScrollViewer.VerticalScrollBarVisibility="Auto" Visibility="Hidden"  Background="AliceBlue"></TreeView>
我只是在XAML调用中使用了BorderThickness=0

我的Xaml代码作为参考

    <TreeView x:Name="tvReports" BorderThickness="0" Grid.Row="0" ScrollViewer.VerticalScrollBarVisibility="Auto" Visibility="Hidden"  Background="AliceBlue"></TreeView>

这解决了我的问题Scrollviewer在treeview中有一个边框厚度

<Style TargetType="TreeView">
                        <Style.Setters>
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate TargetType="TreeView">
                                        <Border Name="Border" Background="Transparent" BorderThickness="0"
                                                >
                                            <ScrollViewer Background="Transparent" Focusable="False"
                                                          CanContentScroll="False"
                                                          BorderThickness="0">
                                                <ItemsPresenter />
                                            </ScrollViewer>
                                        </Border>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                        </Style.Setters>
                    </Style>

这解决了我的问题Scrollviewer在treeview中有一个边框厚度

<Style TargetType="TreeView">
                        <Style.Setters>
                            <Setter Property="Template">
                                <Setter.Value>
                                    <ControlTemplate TargetType="TreeView">
                                        <Border Name="Border" Background="Transparent" BorderThickness="0"
                                                >
                                            <ScrollViewer Background="Transparent" Focusable="False"
                                                          CanContentScroll="False"
                                                          BorderThickness="0">
                                                <ItemsPresenter />
                                            </ScrollViewer>
                                        </Border>
                                    </ControlTemplate>
                                </Setter.Value>
                            </Setter>
                        </Style.Setters>
                    </Style>

因为边框属于ScrollViewer,只需将其重叠设置为边距=-1。

因为边框属于ScrollViewer,只需将其重叠设置为边距=-1。

我尝试了Padding=0 BorderThickness=0。但结果是一样的。@gyungjune,很高兴听到这个消息。如果填充不是解决方案,请将您自己的解决方案作为另一个解决方案发布answer@nikotromus尝试设置BorderThickness=0i尝试填充=0 BorderThickness=0。但结果是一样的。@gyungjune,很高兴听到这个消息。如果填充不是解决方案,请将您自己的解决方案作为另一个解决方案发布answer@nikotromus尝试将BorderThickness设置为0