【发布时间】:2018-08-31 09:06:53
【问题描述】:
开始涉足 Xamarin Forms。 有两件事我想不通:
我的 Listview 的绑定:
我有一堂课:
public class Mainlist
{
public string Title
{
get;
set;
}
public string Value
{
get;
set;
}
}
我的 XAML 看起来像:
<ListView x:Name="mainlist">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Orientation="Horizontal">
<StackLayout Orientation="Vertical">
<Label Text="{Binding Title}" Font="18"></Label>
<Label Text="{Binding Value}" TextColor="Gray"></Label>
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
现在发生的事情是我有一个 URL 列表。从每个 URL 我都在使用 HTMLAgilityPack foreach 循环抓取某些信息,这工作正常。
我想在每次循环运行后将抓取的数据添加到列表视图并显示。诸如“延迟加载”之类的东西。
到目前为止,我只能弄清楚如何在所有 Url 都被抓取后设置 itemsource 并让它立即显示,如下所示:
//set itemsource to URL collection
mainlist.ItemsSource = new List<Mainlist>() {
new Mainlist()
{
//scraped info from each URL
Title = title.ToString().Trim(),
Value = value.ToString().Trim(),
},
};
【问题讨论】:
-
研究使用 MVVM 模式,它会让解决这个问题变得相当简单
-
@sme 如果你能帮助我,那就太好了。我一直在尝试加载。
-
我现在在下面发布了答案
标签: c# listview data-binding xamarin.forms listviewitem