繁体   English   中英

Xamarin表单ListView不断从列表填充数据 <object> 而不是只显示对象一次

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM