gpt4 book ai didi

c# - Xamarin - TabbedPage 导航错误(页面不能有 parent )

转载 作者:太空狗 更新时间:2023-10-29 13:14:27 24 4
gpt4 key购买 nike

所以我得到了 Page must not already have a parent 异常。当我尝试从一个页面导航到另一个已包含在另一个选项卡中的页面时,会发生这种情况。在我将我的页面加载到 TabbedPage 本身之前,我将它们放在一个名为 pages 的列表中,这显然是 TabbedPage 从中获取其子项的地方。我也在尝试让这个列表与我的导航按钮一起使用。但是每当我尝试使用它们时,我都会遇到异常。这是我加载页面的方式:

private int pageNavCount = 0;
private list<ContentPage> pages = nwe List<ContentPage> (0);

public MainCPage ()
{
Create ();

Children.Add(pages[0]);
Children.Add(pages[1]);
Children.Add(pages[2]);
}

这是我将页面放入列表的方式:

pages.Add (new ContentPage { 
Title="Start Pagina",
BackgroundImage="@drawable/background.jpg",
Content = new StackLayout {
Padding = 50,
BackgroundColor = Color.Black,
Opacity = 0.75,
Children = {
//The controls and stuff
}
}
});

这就是我使用带有导航按钮的页面列表的方式:

private  void NavButtonNext_Clicked (object sender, EventArgs e)
{
pageNavCount++;
this.Navigation.PushAsync(pages[pageNavCount]);
}

private void NavButtonPrev_Clicked (object sender, EventArgs e)
{
pageNavCount--;
this.Navigation.PushAsync(ages[pageNavCount]);
}

当我尝试按下按钮时,出现“Page must not already have a parent”异常。而且我不想最终为每个页面制作新按钮!有人可以告诉我我在这里做错了什么吗?

最佳答案

如果你想导航到另一个已经打开的选项卡中的页面,那么你应该这样做:

// you will need a reference to your TabbedPage
pageNavCount--;
tabs.CurrentPage = pages[pageNavCount];

blog有一篇关于以编程方式切换选项卡的好文章。

关于c# - Xamarin - TabbedPage 导航错误(页面不能有 parent ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36428328/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com