HtmlPage.Window.Navigate 在 IE 中工作,但在 Chrome 中不起作用



我有一个非常简单的银光界面,上面有一堆链接。有点像老式的html区域地图,其中不同的部分将您带到内部网络上的不同位置。

我正在开发框上在IE中测试我的页面,并且使用成功重定向页面

HtmlPage.Window.Navigate(New Uri("http://mytestbox02/"))

我将源代码的副本带到我的笔记本电脑上,VS2010的默认浏览器恰好是Chrome,令我惊讶的是,我的链接不起作用。有时我看到它重定向,但它破坏了 uri,最终以 mytestbox02/ 的形式出现,因此它除了 404 之外没有去任何地方,因为它缺少 http://前缀。有时我会遇到例外。该例外的详细信息是

System.InvalidOperationException was caught
  Message=SetProperty failed.
  StackTrace:
       at System.Windows.Browser.ScriptObject.SetProperty(String name, Object value)
       at System.Windows.Browser.ScriptObject.GetObjectForSafari(IntPtr identity, IntPtr handle, Type type, Boolean releaseReferenceOnDispose)
       at System.Windows.Browser.ScriptObject.GetObject(IntPtr handle, Type type, Boolean ownsHandle, Boolean releaseReferenceOnDispose)
       at System.Windows.Hosting.ScriptingInterface.GetScriptParamValue(ScriptParam scriptParam)
       at System.Windows.Hosting.ScriptingInterface.ConvertFromScriptParamAndDispose(ScriptParam scriptParam)
       at System.Windows.Browser.ScriptObject.TryInvoke(String name, Object[] args, Exception& error)
       at System.Windows.Browser.ScriptObject.Invoke(String name, Object[] args)
       at System.Windows.Browser.HtmlWindow.Navigate(Uri navigateToUri, String target, String targetFeatures)
       at System.Windows.Browser.HtmlWindow.Navigate(Uri navigateToUri)
       at popupwindow.MainPage.ChildWindow_Closed(Object sender, EventArgs e)
  InnerException: 

Silverlight 4.1.10111.0 在开发盒和我的笔记本电脑上。

知道这是怎么回事吗?我不能完全确定我的客户会使用 IE,所以我希望有一个解决方法。或者除了window.navigate之外,我可以使用更交叉兼容的东西?不过我还没有找到任何东西..

似乎这实际上可能是Chrome的问题-我只是花了一天时间自己与之抗争。

http://forums.silverlight.net/t/213769.aspx/1

http://stulic.blogspot.com/2009/08/javascript-locationhref-vs-silverlight.html

您可能需要使用某种JavaScript。

HtmlPage.Window.Eval("window.location.href = '<something>';");
//or
HtmlPage.Window.Eval("window.location.reload();");

相关内容

  • 没有找到相关文章

最新更新