2

我有一个页面,其他几个页面导航到。但是在某些情况下,用户不应该看到这个页面,所以我想将它们发送到另一个页面。

而不是更新其余的调用代码,我只想改变这个页面来处理它。

public MyPage()
{
    Loaded += MyPage_Loaded;

    InitializeComponent();
    // Other stuff
}

void MyPage_Loaded(object sender, RoutedEventArgs e)
{
    if(condition)
       NavigationService.Navigate(someUri);
}

由于 NavigationService 在构造函数中不可用,我必须连接到 Loaded 事件并在那里进行重定向。问题是页面已经加载并显示给用户。在重定向用户之前也有一点延迟。

在重定向无缝的情况下,有没有更好的方法来做到这一点?

4

0 回答 0