Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/338.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 为什么我的ListViewItem没有删除?_C#_Android_Listview_Events - Fatal编程技术网

C# 为什么我的ListViewItem没有删除?

C# 为什么我的ListViewItem没有删除?,c#,android,listview,events,C#,Android,Listview,Events,我有一些代码,允许用户添加一天(每天都是ListViewItem),并使用delete按钮将该天发送到自定义适配器。在适配器中,我在单击delete按钮时调用一个事件。我删除的第一项删除没有问题,但对于下一项,我得到一个NullReferenceException。我怀疑这与不正确的索引或其他东西有关 这个片段来自这个片段。它接收从适配器发送的事件。我删除的第一个项目按预期删除,但它是唯一一个 Adapter1.OnDayDeleted += (o,e) =>

我有一些代码,允许用户添加一天(每天都是ListViewItem),并使用delete按钮将该天发送到自定义适配器。在适配器中,我在单击delete按钮时调用一个事件。我删除的第一项删除没有问题,但对于下一项,我得到一个NullReferenceException。我怀疑这与不正确的索引或其他东西有关

这个片段来自这个片段。它接收从适配器发送的事件。我删除的第一个项目按预期删除,但它是唯一一个

        Adapter1.OnDayDeleted += (o,e) =>
        {               
            Day day = e.Day;
            DM.ListOfDays.Remove(day);
            Adapter1.NotifyDataSetChanged();
            Adapter1 = new Adapters.DayObject(Activity, DM.ListOfDays);
            ListViewDays.Adapter = Adapter1;

            Helpers.Common.SetListViewHeightBasedOnChildren(ListViewDays);

        };
此代码段来自适配器。它将事件发送回片段

        Button buttonRemoveDay = row.FindViewById<Button>(Resource.Id.buttonRemoveDay);
        buttonRemoveDay.Click += delegate
        {
            var day = myItems[position];

            //Console.WriteLine(day.Name);
            OnDayDeleted.Invoke(this, new OnDayDeletedEventArgs(day));
        };
Button buttonRemoveDay=row.findviewbyd(Resource.Id.buttonRemoveDay);
按钮删除日期。单击+=委派
{
var日=我的项目[头寸];
//Console.WriteLine(日期、名称);
调用(这是新的OnDayDeletedEventArgs(day));
};

我找到了原因。把电话线拔下来


Adapter1=newadapters.DayObject(活动,DM.ListOfDays)

您是否在IDE中使用Xamarin?在哪一行引发NullReferenceException?删除第一个元素后,myItems集合可能会发生更改,并且位置索引可能不再有效,或者显示给一个元素,而不是原来预期的元素。在
OnDayDeleted.Invoke(…)我在评论中跟随了链接,它仍然是一样的。位于OnDayDelete.Invoke(…)的NullReferenceException