Silverlight: Как я могу заставить этот элемент управления занимать все доступное пространство? - PullRequest
1 голос
/ 23 ноября 2010

Я создаю приложение SL 4.Пользовательский интерфейс состоит из трех основных частей: верхней панели поиска, нижней панели избранного и содержимого страницы между ними.Я бы хотел, чтобы содержимое страницы занимало все доступное пространство.Прямо сейчас, это расширяется горизонтально, но не вертикально.Я не уверен, что я делаю неправильно.Вот XAML:

<Grid x:Name="LayoutRoot" Background="BurlyWood">
    <Grid.RowDefinitions>
        <RowDefinition />
        <RowDefinition />
        <RowDefinition />
    </Grid.RowDefinitions>

    <my:TopSearchBar x:Name="topSearchBar" Grid.Row="0" Navigator="{Binding ElementName=navigationFrame}" HorizontalAlignment="Stretch" VerticalAlignment="Top" />

    <!-- I want this to take up all available space between the bottom and top elements -->
    <navigation:Frame x:Name="navigationFrame" Source="/HomePage.xaml" Grid.Row="1" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Background="BlueViolet" />

    <my:BottomFavoritesBar x:Name="bottomFavoritesBar" Grid.Row="2" Navigator="{Binding ElementName=navigationFrame}" HorizontalAlignment="Stretch" VerticalAlignment="Bottom" />

</Grid>

Что я могу сделать не так?

Ответы [ 2 ]

4 голосов
/ 23 ноября 2010
<Grid.RowDefinitions>
    <RowDefinition Height="Auto" />
    <RowDefinition Height="*" />
    <RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
1 голос
/ 23 ноября 2010

Я не могу воспроизвести вашу проблему.Для меня сетка расширяется по вертикали, чтобы заполнить свое пространство, и каждый из ее дочерних элементов управления занимает треть высоты.

Есть ли у вас эта Сетка внутри чего-то другого, например, StackPanel, которая помешала бы ейзаполнить все вертикальное пространство?

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