[英]Display data in Listview columns instead of row's Xamarin.Forms
[英]Xamarin forms ListView keep populating data from List<object> instead of simply display the objet once
无论如何,我总是遇到这个问题:
List<Object> listArticles
只是每次页面出现时都不断添加数据,它会不断地List<Object> listArticles
填充数据,而不是仅仅显示一次
我试图每次调用该函数时都声明一个tempList,但是没有成功List<PlanDefinition> tempListArticles = new List<PlanDefinition>(listArticles)
如何解决这个问题?
async protected override void OnAppearing()
{
listArticles= articleView.getArticlesFromPlan();
PopulateOrderLists(listArticles);
base.OnAppearing();
}
protected override void OnDisappearing()
{
base.OnDisappearing();
}
private void PopulateOrderLists(List<PlanDefinition> listArticles)
{
List<PlanDefinition> tempListArticles = new List<PlanDefinition>(listArticles);
OrderTemplate prod = new OrderTemplate();
for (var i = 0; i < tempListArticles.Count; i++)
{
prod = new OrderTemplate();
prod.BindingContext = tempListArticles[i].Name;
OrderInformation.Children.Add(prod);
}
}
listArticles
只在listArticles
尚未填充时,才调用一次PopulateOrderLists
,但是要根据您要替换当前listArticles
或添加到当前listArticles
要求进行调整...
例:
async protected override void OnAppearing()
{
if (listArticles != null && listArticles.Count > 0)
{
listArticles= articleView.getArticlesFromPlan();
PopulateOrderLists(listArticles);
}
base.OnAppearing();
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.