XAML, давая полную ширину и высоту моему тексту - PullRequest
0 голосов
/ 15 ноября 2009

У меня есть сетка с 3 рядами, в моем верхнем ряду (высота 200 пикселей) я хочу текст на синем фоне. Как мне указать, что мой текстовый блок должен заполнять пространство? когда я добавляю его, он занимает только место, занимаемое текстом. Пробовал с ViewBox, но это также изменило размер текста, я хочу, чтобы это был фиксированный размер ...

любой

Ответы [ 2 ]

0 голосов
/ 15 ноября 2009

Этот код является примером автозаполнения размера для 3 различных элементов управления в данной сетке в XAML. Автозаполнение используется по умолчанию, поэтому вам не нужно устанавливать ничего дополнительного, просто убедитесь, что поле не установлено. Я протестировал это решение в MS Expression Blend, и оно работает нормально.

    <Grid Height="400" Width="250" Canvas.Left="100" Canvas.Top="20">
        <Grid.RowDefinitions>
            <RowDefinition Height="200*"/>
            <RowDefinition Height="100*"/>
            <RowDefinition Height="100*"/>
        </Grid.RowDefinitions>
        <Button Content="Button"/>
        <CheckBox Content="CheckBox" Grid.Row="2"/>
        <TextBlock Grid.Row="1" Text="Test Text block" TextWrapping="Wrap"/>
    </Grid>
0 голосов
/ 15 ноября 2009

Просто удалите эти четыре свойства из xaml, если они установлены, когда определено TextBlock, или установите для них значения по умолчанию:

  1. HorizontalAlignment (по умолчанию Stretch)
  2. VerticalAlignment (по умолчанию Stretch)
  3. Width (по умолчанию Auto)
  4. Height (по умолчанию Auto)

Ваш TextBlock теперь должен автоматически растягиваться и соответствовать ряду.

Также убедитесь, что ваш Grid также достаточно широк или настроен на ваш Window. Ваша ширина Grid также может быть причиной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...