Пространство внутри панели Wrap - PullRequest
0 голосов
/ 05 мая 2018

Я создаю кнопки из списка БД, это мой файл .xaml

<Controls:MetroWindow
    <ItemsControl x:Name="itemsList" Height="500" Width="550" >
        <ItemsControl.ItemTemplate>
            <DataTemplate DataType="local:Hall">

                <ToggleButton x:Name="ToggleButton"
                    Click="ItemButtonClick"
                    Width="35"
                    Height="35"
                    HorizontalAlignment="Center"
                    VerticalAlignment="Center"
                    Margin="5">
                    <TextBlock TextWrapping="Wrap" TextAlignment="Center" Text="{Binding number}"/>
                </ToggleButton>
            </DataTemplate>
        </ItemsControl.ItemTemplate>
        <ItemsControl.ItemsPanel>
            <ItemsPanelTemplate>

            <WrapPanel Margin="50" VerticalAlignment="Center" HorizontalAlignment="Center">
            </WrapPanel>
        </ItemsPanelTemplate>
        </ItemsControl.ItemsPanel>
    </ItemsControl>
</Controls:MetroWindow>

Можно ли добиться чего-то подобного ниже на картинке? Мне нужно место в этих местах между кнопками

spacing inside

1 Ответ

0 голосов
/ 05 мая 2018

Может быть, вы можете использовать решение вроде this . Вы можете иметь разные значения для чисел и вернуть их соответственно. В вашем случае что-то вроде этого должно работать:

Создайте свойство в своем классе, например, Margin.

public Thickness Margin {
    get {
        int multiplier = 1;
        if (number == 2 || number == 8) multiplier = 2;

        return new Thickness(5, 5, 5 * multiplier, 5);
    }
}

В XAML:

Margin="{Binding Margin}"
...