[WPF] 禁用 Frame 控件的导航栏与后退功能

陪她去流浪 桃子 2017年09月22日 编辑 阅读次数:3987

Frame 的导航栏在多数时候都没有必要展示出来;按 Backspace 键来后退页面更是不常用(没有了后退,就没有了前进)。

导航栏通过 NavigationUIVisibility 属性隐藏;而阻止后退的方式则是在页面导航完成后清除掉历史记录来实现。

XAML

1
2
3
<Frame NavigationUIVisibility="Hidden" JournalOwnership="OwnsJournal" Navigated="Frame_Navigated">

</Frame>

CODE

1
2
3
4
5
private void Frame_Navigated(object sender, NavigationEventArgs e)
{
    var frame = sender as Frame;
    frame.RemoveBackEntry();
}

参考

How disable navigation shortcuts in frame c# WPF - Stack Overflow