0
gridviewでアルファベット順にソートされたリストを横方向にスクロールしています。現在、表示可能なグリッドビューには、合計5列のリスト項目が2行あります。次のボタンをクリックすると、gridviewがリストの次の2列にスクロールされる機能を追加する必要があります。グリッドビューの横スクロールコードの後ろ
gridviewでアルファベット順にソートされたリストを横方向にスクロールしています。現在、表示可能なグリッドビューには、合計5列のリスト項目が2行あります。次のボタンをクリックすると、gridviewがリストの次の2列にスクロールされる機能を追加する必要があります。グリッドビューの横スクロールコードの後ろ
GridView
の中にScrollViewer
を最初に取得する必要があります。以下の方法を使用して取得することができます。
public ScrollViewer GetScrollViewer(DependencyObject element)
{
if (element is ScrollViewer)
{
return (ScrollViewer)element;
}
for (int i = 0; i < VisualTreeHelper.GetChildrenCount(element); i++)
{
var child = VisualTreeHelper.GetChild(element, i);
var result = GetScrollViewer(child);
if (result == null)
{
continue;
}
else
{
return result;
}
}
return null;
}
その後、Button
クリックイベント
ScrollViewer scrollViewer = GetScrollViewer(gridView);
private void NextButton_Click(object sender, RoutedEventArgs e)
{
scrollViewer.ChangeView(scrollViewer.HorizontalOffset + (GridViewItemSize * 2), scrollViewer.VerticalOffset, null, false);
}
では、私はこれを行うためのヘルパーを作成している - SmoothScrollNavigation Helper
ありがとうございました、それが働きました! – rajbir