別のオプションは、コンテンツの周りの矢印ボタンを追加することです。私たちはこれをタッチスクリーンのキオスクに非常に効果的に使用しました。これはもう少し作業ですが、カスタムコントロールにすることもできます。私が持っている唯一のコードは垂直スクロールをサポートしています。
水平スクロールも追加するだけで十分です。下のコードでは、Scrollerの上下にLessとMoreという2つのボタンがあります。
double Epsilon = .001;
private void Scroller_ScrollChanged(object sender, ScrollChangedEventArgs e)
{
if (Scroller.ScrollableHeight > 0) {
Less.Visibility = Math.Abs(Scroller.VerticalOffset - 0) > Epsilon ? Visibility.Visible : Visibility.Hidden;
More.Visibility = Scroller.VerticalOffset + Scroller.ViewportHeight < Scroller.ExtentHeight ? Visibility.Visible : Visibility.Hidden;
} else {
Less.Visibility = More.Visibility = Visibility.Hidden;
}
if (Scroller.ExtentHeight/Scroller.ViewportHeight > 2)
{
SearchPanel.Visibility = Visibility.Visible;
}
}
private void Less_Click(object sender, RoutedEventArgs e)
{
Sounds.Click();
Scroller.PageUp();
}
private void More_Click(object sender, RoutedEventArgs e)
{
Sounds.Click();
Scroller.PageDown();
}
出典
2014-03-06 16:10:15
B2K