Windows phone 7 WP7中的列表框偏移量

Windows phone 7 WP7中的列表框偏移量,windows-phone-7,listbox,Windows Phone 7,Listbox,是否可以设置列表框的偏移量?我所能找到的只是滚动到一个元素,但我需要将列表框滚动到任何位置 作为替代方案,还有任何其他组件可以使其项目虚拟化,并且我可以控制偏移量?您可以获取列表框的ScrollViewer并使用其获取ScrollViewer,例如,您可以连接到列表框的已加载事件,如下所示: XAML: 嗨,迈克尔,你能帮我吗?我在同一页上有两个列表框,数据混淆了,如何使用上述代码获得第二个列表框? <ListBox Loaded="HookScrollViewer"> p

是否可以设置列表框的偏移量?我所能找到的只是滚动到一个元素,但我需要将列表框滚动到任何位置


作为替代方案,还有任何其他组件可以使其项目虚拟化,并且我可以控制偏移量?

您可以获取列表框的ScrollViewer并使用其获取ScrollViewer,例如,您可以连接到列表框的已加载事件,如下所示:

XAML:


嗨,迈克尔,你能帮我吗?我在同一页上有两个列表框,数据混淆了,如何使用上述代码获得第二个列表框?
<ListBox Loaded="HookScrollViewer">
    private void HookScrollViewer(object sender, RoutedEventArgs e)
    {
        var element = (FrameworkElement)sender;
        var scrollViewer = ControlHelpers.FindChildOfType<ScrollViewer>(element);

        if (scrollViewer == null)
            return;

        this.myScrollViewer = scrollViewer;
    }
    public static T FindChildOfType<T>(DependencyObject root) where T : class
    {
        var queue = new Queue<DependencyObject>();
        queue.Enqueue(root);

        while (queue.Count > 0)
        {
            var current = queue.Dequeue();
            for (int i = VisualTreeHelper.GetChildrenCount(current) - 1; 0 <= i; i--)
            {
                var child = VisualTreeHelper.GetChild(current, i);
                var typedChild = child as T;
                if (typedChild != null)
                {
                    return typedChild;
                }
                queue.Enqueue(child);
            }
        }
        return null;
    }
this.myScrollViewer.ScrollToVerticalOffset(double.MaxValue);