Windows Phone Как вертикальный свиток

Я только начинаю разработку WinPhone и не могу понять, как установить вертикальный прокрутки. Например, я запустил новое приложение Pivot, и этот код позволяет пользователю прокручивать вверх и d для просмотра всех записей:

<controls:PivotItem Header="Login">
    <!--Double line list with text wrapping-->
    <ListBox x:Name="FirstListBox" Margin="0,0,-12,0" ItemsSource="{Binding Items}">
        <ListBox.ItemTemplate>
            <DataTemplate>
              <StackPanel Margin="0,0,0,17" Width="432" Height="78">
                  <TextBlock Text="{Binding LineOne}" TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}"/>
                  <TextBlock Text="{Binding LineTwo}" TextWrapping="Wrap" Margin="12,-6,12,0" Style="{StaticResource PhoneTextSubtleStyle}"/>
              </StackPanel>
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
</controls:PivotItem>

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

Спасибо.

Ответ 1

Добавить ScrollViewer поверх StackPanel, и это сделает его прокручиваемым.

Ответ 2

ListBox в примерном коде, который вы предоставили га встроенной функции прокрутки. Однако, если вы не используете что-то, у которого уже есть эта функция прокрутки, вам нужно добавить ScrollViewer.

<controls:PivotItem Header="Example">
    <ScrollViewer Margin="12,0,12,0">
        <StackPanel>
            <TextBlock Text="Example1" FontSize="150" />
            <TextBlock Text="Example2" FontSize="150" />
        </StackPanel>
    </ScrollViewer>
</controls:PivotItem>

Ответ 3

В элементе управления поворота, если содержимое переполняет вертикальную страницу, тогда вам будет доступна по умолчанию "вертикальная" прокрутка.

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

Не добавляйте scrollviewer поверх панели стека, поскольку это сделает прокрутку включенной для каждого элемента списка, который вам не нужен.

<controls:PivotItem Header="all authors" Foreground="#FF0C388A">
            <Grid>
                <ListBox Margin="0,0,-12,0" ItemsSource="{Binding AllAuthorsList}" Foreground="#FF0C388A">
                    <ListBox.ItemTemplate>
                        <DataTemplate>
                                <StackPanel Margin="0,0,0,17" Width="432" Height="Auto">
                                    <TextBlock Tap="TextBlockAuthor_Tap" Text="{Binding}"  TextWrapping="Wrap" Style="{StaticResource PhoneTextExtraLargeStyle}" Foreground="#FF0C388A"/>
                                </StackPanel>
                        </DataTemplate>
                    </ListBox.ItemTemplate>
                </ListBox>
            </Grid>
        </controls:PivotItem>