如何为ItemsControl中的项添加边框?

Luc*_*fer 8 wpf xaml styles border itemscontrol

我正在尝试为项目控件中的每个项目设置边框.以下是我的XAML代码.但这不起作用.

<ItemsControl.ItemContainerStyle>
    <Style>
        <Setter Property="Control.BorderThickness" Value="5" />
        <Setter Property="Control.BorderBrush" Value="Black" />
    </Style>
</ItemsControl.ItemContainerStyle>
Run Code Online (Sandbox Code Playgroud)

H.B*_*.B. 25

在该容器ItemsControlContentPresenter这是不是一个控制,这种风格不会做任何事情.你可以创建一个ItemsTemplate包含a Border.

或者你可以改变ContentTemplateItemContainerStyle:

<ItemsControl.ItemContainerStyle>
    <Style TargetType="ContentPresenter">
        <Setter Property="ContentTemplate">
            <Setter.Value>
                <DataTemplate>
                    <Border BorderBrush="Black" BorderThickness="5">
                        <ContentPresenter Content="{Binding}"/>
                    </Border>
                </DataTemplate>
            </Setter.Value>
        </Setter>
    </Style>
</ItemsControl.ItemContainerStyle>
Run Code Online (Sandbox Code Playgroud)

(注:这是在这个意义上,一个真正的替代它做同样的事情,所以我会使用ItemTemplate,因为它是少了很多详细的,可以节省您的三个标签(Style,Setter,Setter.Value))