0

我有一个页面,它通过它的 Source 属性加载到 Frame 元素中。我需要从源 xaml 的代码隐藏中访问 Frames .BackStack 属性...这可能吗?

所以大致的代码是 -

<Frame x:Name="contentFrame" Source="ProjectsPage.xaml"/>

在 ProjectsPage.xaml.cs 我想访问其父框架上的属性。

4

2 回答 2

1

如果您使用NavigationService.GetNavigationService并从 ProjectsPage 中传入一个元素,您可以在Frame 的 NavigationService上访问CanGoBackGoBack之类的内容,这让您完成的工作几乎与拥有 BackStack 本身一样多。

于 2009-03-05T20:50:32.097 回答
1

导航历史是 WPF 严重不足的一个领域。不,我不相信有任何方法可以从页面获取 Frame 的 BackStack。如果您不需要一般地执行此操作,则可以实施一些 hack。挂钩 Frame 的导航事件,并将附加的依赖属性设置到导航到的任何 DependencyObject 上的 Frame。不幸的是,你可以用 BackStack 做的不多,但我假设你已经确定它对于你正在做的事情已经足够好了。

于 2009-03-23T20:28:52.790 回答