У меня ListView
с ItemTemplate
. Для каждого элемента в моем ItemSource
я хотел бы перебрать свойство в элементе и создать раздел в моем ViewCell
.
Таким образом, каждый элемент Download
:
public class Download
{
public string Title { get; set; }
public IEnumerable<SectionDownload> SectionDownloads { get; set; }
}
SectionDownload
выглядит так:
public class SectionDownload
{
public long TotalBytes { get; set; }
public long DownloadedBytes { get; set; }
public int PercentDownloaded { get => (int)((DownloadedBytes / TotalBytes) * 100); }
}
И мой ListView
, где Downloads
- это ObservableCollection<Download>
в моей ViewModel:
<ListView x:Name="DownloadsListView" SelectionMode="None" ItemsSource="{Binding Downloads}">
<ListView.ItemTemplate>
<DataTemplate>
<StackLayout Padding="10">
<Label Text="{Binding Title}"
d:Text="{Binding .}"
LineBreakMode="NoWrap"
Style="{DynamicResource ListItemTextStyle}"
FontSize="16" />
<!-- Here I would like each SectionDownload to display the percentage downloaded -->
</StackLayout>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>