スクロールビューア内の横にあるスタックパネルに10枚の画像を追加しました。ユーザーがページをスワイプすると、スクロールが特定の位置で停止します。スクロールが2つの画像の中間に停止すると、下の最初の画像のように停止します。番号3の画像を自動的にスクロールして、第2の画像内のような画面スクロールビューア内のスタックパネル項目をスクロール時のディスプレイ左側に停止する
for (int i = 0; i <= 9; i++)
{
Uri uri = new Uri("http://d1mu9ule1cy7bp.cloudfront.net//catalogues/47/pages/p_" + i + "/thump.jpg");
ImageSource img1 = new BitmapImage(uri);
Image rect = new Image { RenderTransform = new TranslateTransform() };
rect.Source = img1;
stack.Children.Add(rect);
}
XAML:
<Grid x:Name="LayoutRoot" Width="480" Background="Transparent" Margin="0,-33,0,0" Height="800">
<ScrollViewer HorizontalContentAlignment="Left" HorizontalAlignment="Left" Name="scroll" VerticalScrollBarVisibility="Disabled" HorizontalScrollBarVisibility="Visible">
<StackPanel Name="stack" Width="Auto" Orientation="Horizontal" HorizontalAlignment="Left" >
</StackPanel>
</ScrollViewer>
</Grid>
ここで述べた「その他」のUIElementは何ですか? –
OK ... GetRelativePositionを使用すると、ある要素の位置を別の要素の位置から見つけることができます。 ScrollViewer内でスクロールするコンテンツがあるため、このスクロール領域外の他の要素を使用する必要があります。あなたはあなたの 'root'要素、すなわち 'Application.Current.RootVisual'を使用することができます – ColinE
私はあなたのソリューションがこの問題を解決できることを願っています。しかし、初心者ですから、サンプルコードやサンプルコードをgothroughに送ってください。 –