Xamarin 使用listview更改方向时的异常行为

Xamarin 使用listview更改方向时的异常行为,xamarin,xamarin.ios,Xamarin,Xamarin.ios,不确定为什么会发生这种情况,但是(有时)当我改变设备的方向时,这是我得到的输出: 这似乎只发生在iPad上。不是iPhone。任何洞察?都可能是将ObservableCollection绑定到ListView的错误 您可以通过覆盖当前ContentPage的OnSizeAllocated来强制刷新ListView protected override void OnAppearing() { base.OnAppearing(); ExampleListView.ItemsSo

不确定为什么会发生这种情况,但是(有时)当我改变设备的方向时,这是我得到的输出:


这似乎只发生在iPad上。不是iPhone。任何洞察?

都可能是将ObservableCollection绑定到ListView的错误

您可以通过覆盖当前ContentPage的
OnSizeAllocated
来强制刷新ListView

protected override void OnAppearing()
{
    base.OnAppearing();
    ExampleListView.ItemsSource = null;
    ExampleListView.ItemsSource = ObservableCollection;
}

最后导航回同一页以避免出现这种情况。在我的代码中似乎有些东西,或者在Xamarin中可能有一个限制,为此我有一个复杂的设置,所以这是可能的

当方向改变时,
OnAppearing
不会被调用。我宁愿完全重新加载整个页面。有什么办法吗?你是对的,我想去意大利。是否尝试在内容视图控件上调用Invalidate()?