我有一个绑定到itemscontrol的视频列表(Url + title)。现在,我使用scrollviewer滚动所有视频,但是我设法对itemscontrol进行了分页。 这是我的项目控件:

<ItemsControl x:Name="_imageList"  HorizontalAlignment="Right" Margin="0,10,10,10"  Width="804"  >
    <ItemsControl.Template>
        <ControlTemplate>
            <ScrollViewer x:Name="ScrollViewer" Padding="{TemplateBinding Padding}" HorizontalScrollBarVisibility="Disabled" VerticalScrollBarVisibility="Auto">
                <ItemsPresenter />
            </ScrollViewer>
        </ControlTemplate>
    </ItemsControl.Template>
    <ItemsControl.ItemsPanel>
                <ItemsPanelTemplate>
            <UniformGrid Columns="5" IsItemsHost="True"/>
                </ItemsPanelTemplate>
    </ItemsControl.ItemsPanel>
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <!--<DataTemplate.Resources>
                <Image x:Key="image" Source="{Binding thumbnail}" />
            </DataTemplate.Resources>-->
            <Grid>
                <Grid.RowDefinitions>
                    <RowDefinition/>
                    <RowDefinition/>
                </Grid.RowDefinitions>
                <Button Grid.Row="0" Click="btn_Clicked" Margin="10,20,0,0" BorderThickness="0" Height="100" Width="200">
                    <Button.Background>
                        <ImageBrush ImageSource="{Binding thumbnail}"  />
                    </Button.Background>
                </Button>
                <TextBlock Grid.Row="1" x:Name="nom" Margin="10,0,0,0" TextAlignment="Center" Text="{Binding title}" VerticalAlignment="Center"/>
            </Grid>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

关于如何做的任何想法? 这是背后的代码

public void Images(int id)
    {
        var images = new ObservableCollection<Video>();
        var wcf = new ServiceReferenceVideo.VideoServiceClient();
        foreach (var item in wcf.GetKidVideos(id))
        {

            images.Add(item);
        }
        _imageList.ItemsSource = images;
    }

===============>>#1 票数:0

据我所知,ItemsControl当前不直接支持分页。

您可能无法分页视图(以及控件)本身,而是分页视频收藏集。 您可以实现包含所有视频的主要收藏。 现在,如果您要翻阅此收藏集,则一种方法是第二个收藏集,该收藏集会不断被清除并填充主收藏集中的下10个项目。

您可以从您的主要收藏夹( images )中提取一定数量的n个项目,如下所示:

ObservableCollection<Video> PageCollection = images.Take(n);

如果您不依赖ItemsControl,则可以看看指南, 指南关于DataGrid和ListBox控件的分页

  ask by Rami Raddaoui translate from so

未解决问题?本站智能推荐:

1回复

浮动项目控件

我需要的ItemsControl必须具有以下外观 : 对于ItemsPanel我已将StackPanel设置为水平方向。 ParameterItemContainer从ItemsControl派生。 不知道如何正确实现模板以得到与屏幕截图相同的外观,还是必须重写功能来设置正
1回复

嵌套项目控件的方向

我有一个嵌套的ItemsControl。 我的数据结构是Campaigns的ObservableCollection,它由Campaign类和数据计数(总计,已分配,未分配,已关闭)的observableCollection组成。 我需要的是以下内容: 我能够获得此内容的第一部分,但
1回复

Scrollview项目控件网格

我有一个自定义控件,基本上是一个项控件。 这是一个3x3按钮的网格,我希望每个页面具有3x3按钮的滚动视图具有不同的页面。 以下是一些图片来说明我的意思: 我将如何创建这样的东西? 我的控件的完整代码可以在这里找到: 访问ItemsControl项目并逐个制作动画。
1回复

包装项目控件的内容

我正在使用两个不同的ItemsControl来生成Button列表。 第二项控件的按钮出现在新的“行”上 第二个ItemsControl的按钮是否可能直接出现在第一个ItemsControl的按钮之后? 按钮的数量可能会有所不同。 它看起来应该像这样:
1回复

WPF嵌套项目控件

我刚刚开始干预ItemsControls / Binding,但是遇到了一个问题。 我看过有关嵌套ItemsControls的各种教程,所以我不确定我做错了什么。 我相信所有代码都正确编码,但是扩展器不会按原样显示内容。 Header正确地使其自身与其父级的顶部对齐,但是ScrollVie
5回复

在WPF项目控件中查找控件

嗨,我在itemscontrol的datatemplate中只有一个文本框。 当我将itemcontrols绑定到一个可观察的集合时,我得到两个文本框。 但我需要根据每个文本框进行一些操作,我希望使用一些id分别找到每个文本框。 任何人都可以帮助如何在WPF中的itemscontrol
1回复

WPF:创建单个项目分页ItemsControl的策略

我想构建一个WPF自定义控件,该控件在屏幕顶部的功能区中一次显示一个验证错误。 ItemsControl或Selector听起来像潜在的基类候选者,但我的要求是一次只显示一个项目,用户将单击功能区上的前进和后退按钮浏览验证错误。 是否可以通过这种方式使用ItemsControl?
1回复

如何使用“更多”条目(也称为分页控件)实现非滚动ItemsControl?

我需要一个控件来实现ItemsControl的常用功能,并具有以下行为: 如果要显示的项目数不适合可用空间,则不显示滚动条,而是减少显示的项目数以使其适合,同时为“更多...”或“ <>”元素保留可用空间。 当项目数足够小时,“更多...”部分将变为不可见。 因此,如果您动
1回复

另一个项目控件/数据模板中的项目控件和项目模板

我正在尝试显示一个Items控件,其中包含另一个表示LED指示器阵列的Items控件。 LED阵列和主项目控件中的所有其他数据都绑定到一个Observable集合。 我无法显示LED阵列。 我也知道IValueConverter在将字节转换为画笔颜色时遇到问题(整个字节数组都进来了,但是我
3回复

如何从背后的代码中引用我的项目控件中的另一个控件?

这是我的XAML: 我想发生的是,当用户在文本框中输入条形码时,如果它与Tag属性中的值匹配,则应将复选框设置为选中状态。 这是我的代码背后: 如果在列表的第一行尝试,它会很好用。 但是,如果我在第二行尝试,它将再次影响第一行中的复选框。 显然,我的代码并不指向我所