如何将所有项目模板数据设置到 Xamarin Carousel 中的单个视图中

2024-02-28

我尝试将 itemtemplate 中的所有项目制作为单个视图,如下图所示,如何使用 Xamarin CarouselView 实现此目的,我正在使用这样的

        carousel = new CarouselView();
            carousel.BindingContext = this;
            carousel.ItemTemplate = itemTemplate;
            carousel.SetBinding(CarouselView.ItemsSourceProperty, new Binding(nameof(this.Items), mode: BindingMode.OneWay));
   LinearItemsLayout linearItemsLayout = new LinearItemsLayout(ItemsLayoutOrientation.Horizontal);
            linearItemsLayout.SnapPointsAlignment = SnapPointsAlignment.Start;
            linearItemsLayout.SnapPointsType = SnapPointsType.Mandatory;
           carousel.ItemsLayout = linearItemsLayout;


 this.Children.Add(carousel,0,1);

预期用户界面 https://i.stack.imgur.com/Q4mee.jpg


做类似事情的最简单方法是使用 Horizo​​ntal集合视图 https://learn.microsoft.com/en-us/xamarin/xamarin-forms/user-interface/collectionview/layout#horizontal-list

CollectionView 可以通过将其 ItemsLayout 属性设置为 Horizo​​ntalList 来在水平列表中显示其项目:

当你检查文档时它给出了类似的例子

<CollectionView ItemsSource="{Binding Monkeys}"
            ItemsLayout="HorizontalList">
<CollectionView.ItemTemplate>
    <DataTemplate>
        <Grid Padding="10">
            <Grid.RowDefinitions>
                <RowDefinition Height="35" />
                <RowDefinition Height="35" />
            </Grid.RowDefinitions>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="70" />
                <ColumnDefinition Width="140" />
            </Grid.ColumnDefinitions>
            <Image Grid.RowSpan="2"
                   Source="{Binding ImageUrl}"
                   Aspect="AspectFill"
                   HeightRequest="60"
                   WidthRequest="60" />
            <Label Grid.Column="1"
                   Text="{Binding Name}"
                   FontAttributes="Bold"
                   LineBreakMode="TailTruncation" />
            <Label Grid.Row="1"
                   Grid.Column="1"
                   Text="{Binding Location}"
                   LineBreakMode="TailTruncation"
                   FontAttributes="Italic"
                   VerticalOptions="End" />
        </Grid>
    </DataTemplate>
</CollectionView.ItemTemplate>

或者,也可以通过将 ItemsLayout 属性设置为 LinearItemsLayout 对象,并将 Horizo​​ntal ItemsLayoutOrientation 枚举成员指定为 Orientation 属性值来完成此布局:

<CollectionView ItemsSource="{Binding Monkeys}">
<CollectionView.ItemsLayout>
    <LinearItemsLayout Orientation="Horizontal" />
</CollectionView.ItemsLayout>
...
</CollectionView>

这会产生一个单行列表,该列表随着新项目的添加而水平增长:

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何将所有项目模板数据设置到 Xamarin Carousel 中的单个视图中 的相关文章

随机推荐

  • 如何在 Gatsby URL 中添加发布日期?

    All the Gatsby 入门演示 https github com gatsbyjs gatsby gatsby starters有一条像这样的路径 gatsby starter blog hi folks 我该如何设置 2015 0
  • Cron 作业 + Twitter

    从 12 30 开始 一直到 1 30 2 30 等 我的应用程序每小时都会发布一条静态推文 我目前正在使用 themattharris 的 twitter API 我也有一个 cron 工作 30 php q home1 USER NAM
  • PyQt5 和 datetime.datetime.strptime 之间的冲突

    所以我正在编写一个工具 可以使用基于 python 3 52 和 Qt5 的图形用户界面从文件中读取时间 最少的操作 datetime datetime strptime Tue a 在隔离环境中工作 输出 1900 01 01 00 00
  • 在 php 5.5 中使用什么来代替 apc 用户数据缓存?

    PHP 5 5 默认包含 zend opcache 这基本上意味着几乎没有人会使用 APC 但是用什么来代替 APC 的用户数据缓存部分 apc store apc fetch 类似 呢 我真正喜欢使用 APC 用户数据缓存的一个用例是静态
  • 如何在vba中另存为.txt

    我希望让我的宏将我创建的新工作表保存为 txt 文件 这是我到目前为止的代码 Sub Move Move Macro Keyboard Shortcut Ctrl m Sheets Sheet1 Select Range A1 Select
  • 绘制完成后清除CGPath路径

    我已经在 iOS 中编写了一个在 TouchMoved 方法中绘图的程序 CGContextAddPath UIGraphicsGetCurrentContext path CGPathMoveToPoint path NULL lastP
  • OpenCV - Java:inRange 函数

    我有我的形象mRgba当我这样做时 Core inRange mRgba B1 B2 mRgba 我得到了我期望的结果 我的所有 RGBA 图像的阈值都在 B1 和 B2 之间 现在我想这样做 Mat roi mRgba submat re
  • Pytorch:获取最终层的正确尺寸

    Pytorch 新手来了 我正在尝试微调 VGG16 模型来预测 3 个不同的类别 我的部分工作涉及将 FC 层转换为 CONV 层 但是 我的预测值不会落在 0 到 2 3 个类别 之间 有人可以向我指出有关如何计算最后一层的正确尺寸的好
  • pyder 中的 Python 调试器在第 2 行停止

    当我尝试调试代码时 调试器在第 2 行停止并且不响应任何命令 例如转到下一行 我正在使用 python 3 9 7 This is what the console looks like If I try to stop the debug
  • 无法加载共享库“libgdiplus” - Docker [带有 Aspose API 的 .NET 应用程序]

    当我创建用于部署的 docker 文件时 应用程序通常在开发环境中工作 但它失败了libgdiplus issue Docker文件 FROM mcr microsoft com dotnet core aspnet 3 0 AS base
  • 具有并排输入字段的 HTML 表单

    我有一个基本上是垂直的 html 表单 但我真的不知道如何在同一行上创建两个文本字段 例如 下面的表格我希望名字和姓氏在同一行 而不是一个在另一个下面
  • 将 UIButton 锚定到 UITableViewController 视图的底部

    我有以下要求 当一个UITableViewController显示的视图中 行数是可变的 在行下方 应显示一个按钮 当行数较小时 按钮应固定在视图的底部 当行数较多时 删除按钮应紧接在最后一行之后放置 换句话说 And not 到目前为止
  • CSS,位置:绝对,滚动条

    假设有一个页面 div div LEFT div div RIGHT div div 为什么水平滚动条只考虑右溢出 换句话说 为什么 LEFT 不触发滚动条 而 RIGHT 却触发呢 除了body gt overflow hidden 对于
  • 获得平均系数和 adj。使用 lapply 来自多个合并回归的 R^2

    我使用循环函数执行了多个池回归 并将回归输出存储在列表中 myregression 我现在想做的是对我的所有回归 即 myregression 列表 有效地执行 lmtest 包中的 coeftest 函数 以调整标准误差和 t 统计量 最
  • Python 中的梯形波

    如何用Python生成梯形波 我研究了 SciPy 和 NumPy 等模块 但没有成功 是否有像 scipy signal gaussian 这样的模块返回代表高斯函数波的值数组 我使用梯形内核生成了这个Astropy https en w
  • 加载图像时 WPF 抛出“无法定位资源”异常

    我有一个 WPF 窗口 其中包含本地系统中一个文件的背景图像 所以 XAML 文件看起来像这样
  • 增量熵计算

    Let std vector
  • 在迭代期间更改 HashMap 键

    是否可以在迭代过程中更改同一个 HashMap 实例的键 因为地图条目集没有方法entry setKey 现在我能想到的是创建另一个 HashMap MultipartParsingResult parsingResult parseReq
  • 如何在 D3 Javascript 中单击节点时显示和隐藏链接和节点

    我正在尝试遵循此 D3 Javascript 链接 gt http bl ocks org mbostock 1093130 http bl ocks org mbostock 1093130了解点击事件的工作原理 我想做的是 当单击蓝色节
  • 如何将所有项目模板数据设置到 Xamarin Carousel 中的单个视图中

    我尝试将 itemtemplate 中的所有项目制作为单个视图 如下图所示 如何使用 Xamarin CarouselView 实现此目的 我正在使用这样的 carousel new CarouselView carousel Bindin