如何在ItemsControl中的每个元素周围绘制边框?

时间:2012-08-04 19:39:32

标签: c# wpf itemscontrol itemtemplate itemtemplateselector

我正在使用ItemsControlItemTemplateSelector来显示我的项目的UI。但是现在,我的所有元素都需要在Grid内(其中一个元素应该在那里)。

一开始我认为ContentControl嵌套在ItemsControl中是正确的,ContentControl应该有ItemTemplateSelector,但我不确定是否这是最好的方法。

2 个答案:

答案 0 :(得分:2)

这样的东西应该在项容器的Template中,ItemsControls有点问题,因为容器是ContentPresenters,没有Template。您可以继承ItemsControl to use a ContentControl,然后使用ItemsControl.ItemContainerStyle编辑这些容器的Template

答案 1 :(得分:1)

<ItemsControl x:Name="lst">
        <ItemsControl.ItemTemplate>
            <DataTemplate>
            <Border BorderThickness="10" CornerRadius="1" BorderBrush="Navy">
                    <TextBox Text="{Binding Name}"/>
            </Border>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>

我希望这会有所帮助。