2012-04-27 43 views
4

我有一個非常簡單的silverlight接口,它有一堆鏈接。有點像老派的html區域地圖,其中不同的部分將您帶到內部網絡的不同位置。HtmlPage.Window.Navigate在IE中可用,但在Chrome中不可用

我在測試我的網頁在IE上開發盒,並有成功重定向使用

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

我把源代碼拷貝到我的筆記本電腦,爲VS2010的默認瀏覽器碰巧頁面鉻和令我驚訝我的鏈接無法正常工作。有時我看到它重定向,但它改變了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之外的其他更多交叉兼容?我還沒有發現任何東西雖然..

回答

2

看來,這可能實際上是一個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();"); 
+0

我開始以爲我是唯一一個跑過這個...... – TWood 2012-09-21 19:07:26

相關問題