WPF - 从帧内部访问Frame的BackStack属性
-
03-07-2019 - |
题
我有一个通过它的Source属性加载到Frame元素中的Page。我需要从源代码xaml的代码隐藏中访问Frames .BackStack属性......这可能吗?
如此粗略的代码是 -
<Frame x:Name="contentFrame" Source="ProjectsPage.xaml"/>
在ProjectsPage.xaml.cs中的我想访问其父框架上的属性。
解决方案
导航历史是WPF非常缺乏的一个领域。不,我不相信有任何方法可以从页面进入框架的BackStack。如果您不需要一般地执行此操作,则可以实现一些黑客攻击。挂钩Frame的导航事件,并在导航到的任何DependencyObject上为Frame设置附加的依赖项属性。不幸的是,你用BackStack做的事情并不多,但我认为你已经确定它已经足够好用于你正在做的事情。
其他提示
如果您使用 NavigationService.GetNavigationService 并从ProjectsPage中传入一个元素,您可以访问诸如 CanGoBack 和上的noreferrer“> GoBack Frame的NavigationService 可以让你完成与BackStack本身一样多的工作。
不隶属于 StackOverflow