Столбец сетки не изменяет размеры при повороте - PullRequest
0 голосов
/ 20 декабря 2011

Я разрабатываю приложение WP7.На главной странице у меня есть ListBox.Каждый элемент содержит StackPanel и кнопку.Размер элементов в StackPanel варьируется, а ширина кнопки всегда составляет 75 пикселей.Я хочу, чтобы ширина части Stackpanel всегда составляла 80% ширины экрана.Я использую следующий DataTemplate для ListBox:

<Grid>
    <Grid.ColumnDefinitions>
        <ColumnDefinition Width="*" />
        <ColumnDefinition Width="Auto" />
    </Grid.ColumnDefinitions>

    <StackPanel Grid.Column="0" Margin="0,0,0,17" toolkit:TiltEffect.IsTiltEnabled="True">
        <TextBlock Text="{Binding ItemDescription}" TextWrapping="Wrap" Margin="12,0,0,0" Style="{StaticResource PhoneTextTitle2Style}" Foreground="{StaticResource PhoneAccentBrush}" />
        <TextBlock Text="{Binding ItemLocation}" TextWrapping="Wrap" Margin="12,-6,0,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
        <TextBlock Text="{Binding ItemDate}" TextWrapping="Wrap" Margin="12,6,0,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
    </StackPanel>
    <Button Grid.Column="1" x:Name="deleteTaskButton" Width="75" Height="75" BorderThickness="0" Margin="0,-18,0,0" Click="DeleteTaskButtonClick">
        <Button.Template>
            <ControlTemplate>
                <Image Source="{Binding ElementName=RemindersListBox, Path=DataContext.ImgSource}" Height="48" Width="48" />
            </ControlTemplate>
        </Button.Template>
    </Button>
</Grid>

Я использовал решение из этого вопроса .Но Сетка не меняет размеры.Как мне добиться, чтобы первый столбец сетки был на 80% ширины как в альбомном, так и в портретном режиме?Это заняло меня уже несколько часов ...

Заранее спасибо!

Ответы [ 2 ]

2 голосов
/ 20 декабря 2011

Проблема в том, что listboxitem не растягивается на всю ширину. Используйте этот подход для решения этой проблемы: Проблема ширины списка WP7 при изменении ориентации

2 голосов
/ 20 декабря 2011
<Grid.ColumnDefinitions>
    <ColumnDefinition Width="4*" />
    <ColumnDefinition Width="1*" />
</Grid.ColumnDefinitions>

Должен дать вам 80/20 разделить на размеры столбцов.

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