Silverlight 4.0 如何从silverlight代码中获取silverlight视图页面名称和查询字符串?

Silverlight 4.0 如何从silverlight代码中获取silverlight视图页面名称和查询字符串?,silverlight-4.0,.net-4.0,query-string,Silverlight 4.0,.net 4.0,Query String,VS2010 w/Ria服务和SL4 我已经在浏览器中加载了我的SL应用程序 用户点击不同的查看页面,我想将它们的当前位置存储在“最近访问的页面”列表中 为此,我需要存储视图页面+任何现有查询字符串键/值 示例:这是我的sl应用程序中的一个真实页面: 在#符号之前我不关心任何事情——在谷歌上有一百万种方法可以从sl获取http://localhost:52878/Default.aspx uri 我真正想要的是querystring的“DocSearchShell?CM起源”部分,这就是我想要

VS2010 w/Ria服务和SL4

我已经在浏览器中加载了我的SL应用程序

用户点击不同的查看页面,我想将它们的当前位置存储在“最近访问的页面”列表中

为此,我需要存储视图页面+任何现有查询字符串键/值

示例:这是我的sl应用程序中的一个真实页面:

在#符号之前我不关心任何事情——在谷歌上有一百万种方法可以从sl获取http://localhost:52878/Default.aspx uri

我真正想要的是querystring的“DocSearchShell?CM起源”部分,这就是我想要为“最近访问的页面”捕获和存储的内容

如何从sl4(.NET 4)代码隐藏中执行此操作


谢谢

您可以通过
System.Windows.Browser.HtmlPage.Window.CurrentBookmark
访问“#”符号后面的查询字符串部分。
    protected override void OnNavigatedTo(NavigationEventArgs e)
    {
        // The answer is this:
        // e.Uri.OriginalString;
    }

它可以从SL应用程序的任何部分工作。

浏览器自己的历史记录功能是否不为您提供此功能?如果我使用内置的SL4导航,我可以访问查询字符串的“DocSearchShell?CM Origination”部分:private void ContentFrame_Navigated(object sender,NavigationEventTargets e){string myPage=e.Uri.ToString()}但我真的很想知道如何从事件方法之外获得它,这是我找到的唯一方法。不过,如果能找到如何在OnNavigatedTo方法之外进行此操作,那就太好了。