如何在 xamarin 中的 SQLite 数据库中显示 CollectionView 中的数据?
Posted
技术标签:
【中文标题】如何在 xamarin 中的 SQLite 数据库中显示 CollectionView 中的数据?【英文标题】:How to show data in CollectionView from SQLite database in xamarin? 【发布时间】:2021-04-14 06:37:23 【问题描述】:我想从数据库中获取 url 和一些文本到集合视图并显示带有该标签的图片。如何将数据库数据与 CollectionView 连接并显示?
这是我的模特
public class Airplane
[PrimaryKey]
public int Id get; set;
public string Plane get; set;
public string Airline get; set;
public string Livery get; set;
public string Registration get; set;
public string Airport get; set;
public string Date get; set;
public string Comment get; set;
public string Url get; set;
还有 XAML 代码
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
</Grid.RowDefinitions>
<CollectionView>
<CollectionView.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="100"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Image Source=""
HeightRequest="200"
Grid.Column="0"/>
<Label Text=""
Grid.Column="1"/>
</Grid>
</DataTemplate>
</CollectionView.ItemTemplate>
</CollectionView>
</Grid>
【问题讨论】:
将数据库中的数据查询到 IEnumerable 中,并将其用作 CollectionView 的 ItemsSource。有很多例子可以说明如何做到这一点。 你能举一个例子或给我链接吗? 【参考方案1】:获取您的数据
var data = db.Table<Airplane>().ToList();
将其分配给ItemsSource
myCollectionView.ItemsSource = data;
将绑定表达式添加到您的模板
<Image Source="Binding Url" ... />
<Label Text="Binding Plane" ... />
【讨论】:
我正在寻找这样的解决方案,但我找不到或者我问得很糟糕,谢谢@Jason以上是关于如何在 xamarin 中的 SQLite 数据库中显示 CollectionView 中的数据?的主要内容,如果未能解决你的问题,请参考以下文章
如何从数据库中输入方法 ID 的输入参数,而不是使用 SQLite 的字段中的数字 - Xamarin
如何在xamarin中删除集合视图中的一个单元格和sqlite中的行的删除按钮?
如何从图库中选择图像并保存到 xamarin 中的 sql 数据库