Я пытаюсь создать форму в приложении WPF, которая позволит пользователю использовать жесты, подобные iPhone, для прокрутки доступных полей. Итак, я поместил все свои элементы управления формой в StackPanel внутри ScrollViewer, и полоса прокрутки отображается, как и ожидалось, когда на экране слишком много элементов для отображения.
Однако, когда я пытаюсь проверить это на моем устройстве с сенсорным экраном, жест панорамирования (помещая палец на поверхность и перетаскивая его вверх) не сдвигает видимую область вниз, как я ожидал.
Когда я просто помещаю несколько элементов в ListView, сенсорные жесты работают очень хорошо. Есть ли способ включить такое же поведение в ScrollViewer?
Мое окно имеет следующую структуру:
<Window x:Class="TestTouchScrolling.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525" Loaded="Window_Loaded">
<Grid>
<ScrollViewer Name="viewer" VerticalScrollBarVisibility="Auto">
<StackPanel Name="panel">
<StackPanel Orientation="Horizontal">
<Label>Label 1:</Label>
<TextBox Name="TextBox1"></TextBox>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Label 2:</Label>
<TextBox Name="TextBox2"></TextBox>
</StackPanel>
<StackPanel Orientation="Horizontal">
<Label>Label 3:</Label>
<TextBox Name="TextBox3"></TextBox>
</StackPanel>
<!-- Lots more like these -->
</StackPanel>
</ScrollViewer>
</Grid>