2011-06-13 65 views
3

我正在使用导航框架,基本上有一个用于导航的框架。 我曾尝试玩mainFrame.JournalOwnership因为我认为也许改变它可能与此有关,但没有任何变化。Silverlight导航框架在导航时不改变地址栏(不显示井号标签)

由于导航相关的类结构很小我在这里有点困惑我在做什么错误,因为我想不出任何我可以改变做导航工作。

我没有使用导航模板,我使用它的自由风格很像这个视频教程http://www.silverlight.net/learn/videos/all/navigation-framework/如果有人可能会问。

在此先感谢。真的很挣扎着。请帮忙

我试图通过使用我的大型机页面并调用简单的navigatate来清空测试页,并且它工作正常,因此我现在有了新的问题,从而在另一个解决方案中重现了错误。

也许有一种方法,我的SL页面HTML禁用导航框架设置的哈希标记?

编辑:我已经测试把我的工作测试XAP放在我的html页面上,而不是我的整个应用程序不工作,它没有更新此页面上的标签。所以现在它明确的HTML页面出了问题,可能是什么呢?

+0

你使用的浏览器? – Waleed 2011-06-13 06:28:59

+0

我已经尝试过IE和Chrome,结果相同 – 2011-06-13 12:12:01

回答

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

0

设置JournalOwnership = JournalOwnership.OwnsJournal的行为对SL表示,导航历史记录在其他地方维护。换句话说,用于跟踪历史记录的次要URL更改不再使用。请记住,在SL导航应用程序中导航框架不会离开页面,但它会更新URI书签#以保持AJAX保持历史记录的状态。如果你的SL应用真的“离开了页面/ URI”,那么你的应用将不得不完全重新加载。无论您是使用导航模板还是现在,它都按照规定工作。改变“框架”实际上只是加载UserControl类型并将内容放入现有SL控件的一个区域。

+0

它不会更新井号标签,我说没有更改,我的意思是地址保持不变,没有#显示,只是主机silverlight的index.aspx页面(示例名称)。我知道更改帧是在其他控件中加载控件,但除此之外它应该更新地址栏主题标签,而不是。所以问题是如何做到这一点?去哪里看? – 2011-06-13 22:17:57

+0

我从来没有说过它会更新哈希标签。不知道你是否不理解我上面所说的。设置OwnsJournal意味着没有哈希标签更改。这就是您使用此设置指定的内容。取消设置或不设置。 – 2011-06-14 00:02:23

+0

好,因为没有什么更新hashtags,也许我不明白OwnsJournal应该如何工作,但它不会更新有或没有OwnJournal设置的主题标签。 – 2011-06-14 00:03:22