Xamarin.forms 如何删除添加到stackLayout的子项

Xamarin.forms 如何删除添加到stackLayout的子项,xamarin.forms,Xamarin.forms,我正在使用scrollView和其中的stackLayout。将视图动态添加到stackLayout。当我试图删除添加的视图时,出现以下异常: 调用线程无法访问此对象,因为另一个 线程拥有它 我的代码如下 添加以下代码: MessagesStackLayout.Children.Clear(); foreach(消息列表中的var聊天) { MessagesStackLayout.Children.Add(新建CustomViewCell(聊天)); } 我有一种感觉,它没有在主线程上运行代

我正在使用scrollView和其中的stackLayout。将
视图
动态添加到stackLayout。当我试图删除添加的视图时,出现以下异常:

调用线程无法访问此对象,因为另一个 线程拥有它

我的代码如下


添加以下代码:

MessagesStackLayout.Children.Clear();
foreach(消息列表中的var聊天)
{
MessagesStackLayout.Children.Add(新建CustomViewCell(聊天));
}

我有一种感觉,它没有在主线程上运行代码。请尝试以下方法,看看是否适合您:

  Device.BeginInvokeOnMainThread(() =>
  {
     MessagesStackLayout.Children.Add(new CustomViewCell(chat));
  });

谢谢你的帮助@G.hakim,但我还是得到了同样的例外情况,事情是,最初添加孩子时没有问题。当我尝试在一段时间后再添加一条消息时,会出现异常。例如,最初,如果我现在尝试添加第13条消息,则视图中现在有12条消息。因此,首先添加一组视图,然后删除所有视图,然后再试一次。我是否正确!?您是在哪里执行操作的
MessagesStackLayout.Children.Clear()
消息stacklayout.Children.Add(新的CustomViewCell(chat))?在线程中?