NotifyDatasetChanged()从服务器更新Listview

本文关键字:更新 Listview 服务器 NotifyDatasetChanged | 更新日期: 2023-09-27 18:28:18

我有一个ListView,它的项是从Api调用中获取的。然后我添加了另一个项目,将其发送到api以添加它。我想用我刚刚添加的值更新现有的列表。

我正在做这样的事情:-

itemList =   dataAgent.GetItemList(some params);
                 cAdapter = new ItemsListAdapter(this, itemList);
                 lvItems.Visibility = ViewStates.Visible;
                 lvItems.Adapter = cAdapter;
                 SetListViewHeightBasedOnChildren(lvItems);
             }
             btnItemComment.Click += btnItemComment_Click;
        void btnItemComment_Click(object sender, EventArgs e)
        {
            string itemsText = editComments.Text.ToString().Trim();
            if(string.IsNullOrEmpty(itemsText))
            {
                CreateAndShowAlert(this, "", "Please enter a text");
            }
            else
            {
                var status = dataAgent.PostItem (Some more params);
                if(status)
                {
                    cAdapter.NotifyDataSetChanged();
                }
            }
        }

但是ListView不会被刷新。我还有什么需要做的吗?如有任何帮助,将不胜感激

NotifyDatasetChanged()从服务器更新Listview

再次设置适配器,然后添加NotifyDataSetChanged:-

cAdapter=new ItemsListAdapter(this,itemList);

cAdapter.NotifyDataSetChanged();