Интервал между элементами в WPF ItemsControl

Я показываю List<string> коллекция в ItemsControl. Проблема в том, что нет интервала между элементами списка TheyAreAllNextToEachOther.

Как я могу создать некоторый интервал между элементами?

<ItemsControl Grid.Column="2" 
         Grid.ColumnSpan="2" 
         ItemsSource="{Binding Path=ShowTimes}"
         BorderThickness="0">
    <ItemsControl.ItemsPanel>
        <ItemsPanelTemplate>
            <WrapPanel IsItemsHost="True" Orientation="Horizontal"/>
        </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
</ItemsControl>

2 ответов


Я бы добавил ItemTemplate, где вы устанавливаете margin

<ItemsControl.ItemTemplate>
    <DataTemplate>
        <TextBlock Margin="3,3,3,3" Text="{Binding}"/>
   </DataTemplate>
</ItemsControl.ItemTemplate>

укажите стиль для контейнеров ItemsControl (по умолчанию ContentPresenter), как это, где вы можете установить маржу сказать 5:

    <ItemsControl>
        <ItemsControl.ItemContainerStyle>
            <Style>
                <Setter Property="FrameworkElement.Margin" Value="5"/>
            </Style>
        </ItemsControl.ItemContainerStyle>
    </ItemsControl>