スクロールビューア内から水平スタックパネルをスクロールするのに問題があります。私がやろうとしていることは、私の例よりも複雑ですが、変数を削除した後、この最後の問題を解決できれば、すべてを理解できると思います。
基本的に、水平スタックパネルが含まれている場合、スクロールビューアーを水平にスクロールさせることはできません。
サンプル XAML は次のとおりです。
<ScrollViewer>
<StackPanel Orientation="Horizontal">
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
<Image Source="test.png" Width="400" Height="400"/>
</StackPanel>
</ScrollViewer>
奇妙なことに、向きを水平から垂直に入れ替えるだけで、問題なくスクロールできます。複数の投稿で、スタックパネルにはスクロールビューアーに適していない可能性があるという問題があることを読んだので、グリッドでも試しましたが、同じ結果が得られました。
<ScrollViewer>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
<ColumnDefinition Width="400"/>
</Grid.ColumnDefinitions>
<Image Source="test.png" Width="400" Height="400" Grid.Column="0"/>
<Image Source="test.png" Width="400" Height="400" Grid.Column="1"/>
<Image Source="test.png" Width="400" Height="400" Grid.Column="2"/>
<Image Source="test.png" Width="400" Height="400" Grid.Column="3"/>
<Image Source="test.png" Width="400" Height="400" Grid.Column="4"/>
<Image Source="test.png" Width="400" Height="400" Grid.Column="5"/>
</Grid>
</ScrollViewer>
あまりにも単純に思えて、根本的なことを誤解しているように感じます。誰かが助けることができれば、私は非常に感謝しています.