Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typo3/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 创建循环列表框_Windows Phone 7 - Fatal编程技术网

Windows phone 7 创建循环列表框

Windows phone 7 创建循环列表框,windows-phone-7,Windows Phone 7,嗨,我想创建一个循环列表框,以便最后一个项目的下一个项目是第一个项目,反之亦然-创建一个没有顶部或底部的列表框 我知道WP7工具包中有一个循环选择器,但它不太适合我所需要的,因为它在外围项目中淡入淡出,而你有一个“选中”的项目总是在中间。 我查看了LinkedList集合,但它似乎不支持循环:“LinkedList(Of t)类不支持链接、拆分、循环,或其他可能使列表处于不一致状态的功能。” 是否有人知道我正在寻找的解决方案,或者我是否需要开发当前列表框和工具箱的LoopingSelector的

嗨,我想创建一个循环列表框,以便最后一个项目的下一个项目是第一个项目,反之亦然-创建一个没有顶部或底部的列表框

我知道WP7工具包中有一个循环选择器,但它不太适合我所需要的,因为它在外围项目中淡入淡出,而你有一个“选中”的项目总是在中间。

我查看了LinkedList集合,但它似乎不支持循环:“LinkedList(Of t)类不支持链接、拆分、循环,或其他可能使列表处于不一致状态的功能。”

是否有人知道我正在寻找的解决方案,或者我是否需要开发当前列表框和工具箱的LoopingSelector的混合体


好多了

看看佩佐尔德的。

我最近和你的朋友有同样的问题!我使用blend 4来处理这个问题,使我的列表在特定时间重置到特定位置,并在原始列表的前后添加一个列表副本

示例:我的列表是:1-2-3-4-5-6, 我会让它成为1-2-3-4-5-6-1-2-3-4-5-6-1-2-3-4-5-6 每隔20秒它就会复位到原来的位置。例如:如果用户在项目4上,它会将位置重置为项目4,但位于中间列表

我现在有个问题问你,如果有什么帮助的话,你可以查一下:

使用Scrollviewer包含列表框,放置操作完成事件,并使用ScrolltoVerticalOffset(0)使其循环滚动。也许我的代码会有帮助:

 <ScrollViewer HorizontalScrollBarVisibility="Auto" Margin="-2,567,-1,0" x:Name="imagesScrollview"
                  Opacity="1" Grid.Row="1" RenderTransformOrigin="0.5,0.5" 
                  ManipulationCompleted="imagesScrollview_ManipulationCompleted" Height="85" MouseLeftButtonDown="ScrollViewer_MouseLeftButtonDown">
        <ScrollViewer.Background>
            <ImageBrush ImageSource="/PhoneApp11;component/Images/top_friends_float.png" />
        </ScrollViewer.Background>
        <ListBox  x:Name="listBox" ScrollViewer.HorizontalScrollBarVisibility="Disabled" ScrollViewer.VerticalScrollBarVisibility="Disabled" Width="Auto" Height="80" Background="{x:Null}">

            <ListBox.ItemTemplate>
                <DataTemplate>

如果发生以下情况:

        private void imagesScrollview_ManipulationCompleted(object sender, ManipulationCompletedEventArgs e)
    {
        ScrollViewer scrollviewer = sender as ScrollViewer;

        if (scrollviewer.HorizontalOffset > (listBox.ActualWidth - 700))
            scrollviewer.ScrollToHorizontalOffset(0);
        else if (scrollviewer.HorizontalOffset < 100)
            scrollviewer.ScrollToHorizontalOffset((listBox.ActualWidth - 487));
    }
private void imagescrollview\u操作已完成(对象发送方,操作已完成事件参数e)
{
ScrollViewer ScrollViewer=发送方作为ScrollViewer;
如果(scrollviewer.HorizontalOffset>(listBox.ActualWidth-700))
scrollviewer.ScrollToHorizontalOffset(0);
否则如果(scrollviewer.HorizontalOffset<100)
scrollviewer.ScrollToHorizontalOffset((listBox.ActualWidth-487));
}

***注意:我允许我的scrollviewer以两种方式循环。

Hi ng_ducnghia,因此如果我理解正确,您有一个列表,并且在该列表中您复制了原始列表两次,以便每个项目都有3个实例?要重置位置,是否使用ScrollIntoView方法?您好,n00b,我最近解决了这个问题。我在scrollviewer中有我的listbox(确保禁用listbox滚动),并且我使用scrollviewer的操纵完成事件,这意味着当你滚动到最后时,它将执行一个操作。然后我使用scrollToHorizontalOffset(或scrolltoVerticalOffset)将其设置为0,使其转到第一项。