2012-02-21 113 views
0

我使用一個ASPX page.i內Silverlight內容創建Silverlight頁面是在一個單獨的Silverlight項目,我已經加入該項目到我正常的asp.net應用程序ClientBin.i需要重定向到一個ASPX頁面上我的asp.net項目從silverlight頁面按鈕click.how我可以執行此操作嗎?Silverlight的頁面導航

回答

1

我認爲你有兩個選項之一。在針對Silverlight控件您的視圖模型,在初始化過程中,綁定導航URI的超鏈接按鈕,您要瀏覽到所需的URI。選項2(更平滑):在click方法上,在承載silverlight對象的頁面上調用javascript方法。然後,該方法會做一些平滑的jQuery過渡或只是一個簡單的導航爲你。
選項1:<HyperlinkButton NavigateUri="{Binding DesiredURL}" TargetName="_blank" />

有關選項2,請記住,包括:

使用System.Windows.Browser;

選項2:

 public void OnFancyNavigate(string _destination) 
    { 
     //call the browser method/jquery method (I used constants to centralize the names of the respective browser methods 
     try 
     { 
      HtmlWindow window = HtmlPage.Window; 
      window.Invoke(Constants.TBrowserMethods.BM_FANCYNAVIGATE, new object[] { _destination}); 
     } 
     catch (Exception ex) { System.Diagnostics.Debug.WriteLine(ex.ToString()); } 
    } 

最後,定義JavaScript方法在ASPX承載XAP內容/ HTML/js文件:

function fancyNavigate(_destination) { 
//some fancy jquery or just the traditional document.location change here 

}

C#將定位從你的代碼中調用JavaScript方法時,你應該是好去