C# 如何在WP7/WP8中将参数传递到本地html页面?

C# 如何在WP7/WP8中将参数传递到本地html页面?,c#,windows-phone-7,url,webbrowser-control,windows-phone-8,C#,Windows Phone 7,Url,Webbrowser Control,Windows Phone 8,有人知道如何将url参数传递到Web浏览器控件中的本地页面吗 当您单独导航到页面时,“/Html/MyPage.Html”一切正常,但一旦添加参数,“/Html/MyPage.Html?Message=Hello”我就会收到一个错误页面,说明我们无法导航到该页面。 有什么想法吗?作为一个肮脏的解决方法,您可以通过以下方式实现: A.导航到不带任何参数的页面 B.将传递以下逻辑的参数附加到以下事件之一 -成功导航时 -在WebBrowser控件加载内容后发生 C.使用 或 其中processArg

有人知道如何将url参数传递到Web浏览器控件中的本地页面吗

当您单独导航到页面时,
“/Html/MyPage.Html”
一切正常,但一旦添加参数,
“/Html/MyPage.Html?Message=Hello”
我就会收到一个错误页面,说明我们无法导航到该页面。

有什么想法吗?

作为一个肮脏的解决方法,您可以通过以下方式实现:

A.导航到不带任何参数的页面

B.将传递以下逻辑的参数附加到以下事件之一

-成功导航时

-在WebBrowser控件加载内容后发生

C.使用


其中processArgs是在html文件中的某个位置定义的。

作为另一种解决方法,您可以将参数作为位置哈希参数传递(如果未使用)

然后在index.html中

var args = window.location.hash;
(args='#p=123&p2=567')


在WP7上测试(index.html存储在独立存储中)+WP8(index.html直接从XAP加载)

这会有所帮助。@Tony感谢您的快速响应。实际上,我指的是带有本地HTML页面的Web浏览器控件,而不是XAML页面。这实际上是我最终使用的。工作完美。
webBrowser.InvokeScript("processArgs", new string[] {"someArgs"});
browser.Navigate(new Uri("www/index.html#p=123&p2=567", UriKind.Relative));
var args = window.location.hash;