小编Mic*_*ski的帖子

UWP Frame PageNavigation

我在UWP中遇到导航系统问题.

我有3个不同的页面,其中包含BackRequested事件.问题是Frame无法返回第2页.

例如:

Page 1 -> Page 2 -> Page 3 -> BACKBUTTON -> Page 1
Run Code Online (Sandbox Code Playgroud)

我想访问第2页而不是第一页.

由于我想要一个导航栏,我决定创建一个包含内部Frame Control的Master页面.该控件被称为例如"层".

我可以使用此代码导航到第2页

Layer.Navigate(typeof(BlankPage2), this);
Run Code Online (Sandbox Code Playgroud)

"this"包含我需要从第二页访问图层的整个FirstPage.

当我想打电话给第3页时,代码就是这样的

_FirstPage.Layer.Navigate(BlankPage2),this);
Run Code Online (Sandbox Code Playgroud)

我可以使用获取FirstPage实例

 protected async override void OnNavigatedTo(NavigationEventArgs e)
    {FirstPage _FirstPage = e.Parameter as FirstPage;}
Run Code Online (Sandbox Code Playgroud)

我认为问题是我的FirstPage实例与第二页中的给定参数不同.

我可以尝试调用FirstPage(比如

WinForm -> (Form1) master = (Form1)Application.OpenForms["Form1"];) 
Run Code Online (Sandbox Code Playgroud)

但我不知道如何打开页面......

这个标准是什么?

如何在一个页面中拥有包含不同页面的导航栏?

我很抱歉语法.由于Windows 10支持键盘输入,它会尝试纠正enter code here从英语到德语的任何工作.

*编辑

我试图创建一个测试项目,看看它是如何工作的,没有UIElement(Frame)我能够得到正确的BackStack.但不幸的是,问题没有解决!

   protected async override void OnNavigatedTo(NavigationEventArgs e)
    {


        try
        {
            int count = 0;
            StringBuilder sb = new StringBuilder();
            foreach (var item in this.Frame.BackStack) …
Run Code Online (Sandbox Code Playgroud)

c# navigation controls frame uwp

1
推荐指数
1
解决办法
3025
查看次数

标签 统计

c# ×1

controls ×1

frame ×1

navigation ×1

uwp ×1