使用c#

时间:2019-03-27 09:25:36

标签: c# android xamarin parse-platform

我正在尝试删除ListView中的一行,但是我不断收到错误消息“ Parse.ParseException:找不到对象”。

private async void ApproveButton_Click(object sender, EventArgs e)
{
    int pos = (int)(((ImageButton)sender).GetTag(Resource.Id.imageBtnApprove));
    leaves.RemoveAt(pos);
    activity.RunOnUiThread(() => this.NotifyDataSetChanged());

    ParseQuery<ParseObject> query = ParseObject.GetQuery("LeaveInfo");
    IEnumerable<ParseObject> applyeave = await query.FindAsync();
    foreach (var record in applyeave)
    {
        await record.DeleteAsync();
        await record.SaveAsync();
    }
}

2 个答案:

答案 0 :(得分:0)

如果要从listview中删除项目,请首先打开adapter中的listview,然后添加一个方法。 data是我的演示中的数据容器,数据是list的一种类型。

 public void RemoveItemAt(int position)
 {
        data.RemoveAt(position);
 }

然后,您可以将事件监听器添加到listview或其他视图中,我将点击监听器添加到此处的列表视图中。

        lv_test = FindViewById<ListView>(Resource.Id.lv_test);

        lv_test.Adapter = adapter;

        lv_test.ItemClick += (s, e) =>
        {
            OnClick(e.Position);
        };
    public void OnClick(int position)
    {
      //call RemoveItemAt method in adapter
        adapter.RemoveItemAt(position);
      //notify the data changed
        adapter.NotifyDataSetChanged();
    }

我对parse-server不熟悉。有一个简单的演示有关从列表视图中删除数据。 https://github.com/851265601/DeleteItemListviewDemo

答案 1 :(得分:0)

您可以使用以下代码删除对象:

ParseQuery<ParseObject> query = ParseObject.GetQuery("WeChatUser");
ParseObject myObject = await query.GetAsync("<PARSE_OBJECT_ID>");
await myObject.DeleteAsync();

我从API参考中获得了上面的代码,您可以访问一个平台,该平台会自动为数据库中保存的所有对象生成文档:

https://blog.back4app.com/2018/12/14/the-api-reference-tool/