我使用的是Navigation框架,基本上有一个用于导航的框架。
我试过玩mainFrame.JournalOwnership
因为我认为可能会改变它可能与此相关但没有任何改变。
由于导航相关的类结构非常小,我在这里有点困惑,因为我无法想到其他任何我可以改变以使导航工作。
我没有使用导航模板,如果有人想知道的话,我会使用免费样式,就像在这个视频教程中http://www.silverlight.net/learn/videos/all/navigation-framework/一样。
提前致谢。真的很挣扎。请帮忙
我试图通过仅使用我的主机页面并调用简单的navigatate来清空测试页面来重现另一个解决方案中的错误,并且它运行正常,所以我现在有了新的问题。
也许有一种方法可以让我的SL页面HTML禁用由导航框架设置的哈希标签?
编辑:我已经测试过将我的工作测试XAP放在我的html页面而不是我的整个应用程序中,但是它没有更新此页面上的主题标签。所以现在很明显html页面出了问题,可能是什么呢?答案 0 :(得分:0)
设置JournalOwnership = JournalOwnership.OwnsJournal的行为告诉SL导航历史记录在其他地方维护。换句话说,不再使用用于跟踪历史记录的次要URL更改。记住在SL导航应用程序中导航框架不会移出页面,但它会更新URI书签#以维持状态,就像AJAX维护历史记录一样。如果你的SL应用程序确实“离开了页面/ URI”,那么你的应用程序必须完全重新加载。无论您是使用导航模板还是现在,它都按规定工作。更改“框架”实际上只是加载UserControl类型并将内容放入现有SL控件的区域。
答案 1 :(得分:0)
终于找到了问题所在。 原来这里的关键是silverlight用来使用这个操作的iframe, 在我将以下代码添加到我的aspx页面后,它开始像魔术一样工作。
<iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe>
如此处所述:http://msdn.microsoft.com/en-us/library/cc838245(VS.95).aspx