2015-10-05 167 views
1

我想在當前/默認瀏覽器中打開瀏覽器窗口而不是新標籤頁。如何在lightswitch應用程序中打開瀏覽器窗口?

我在桌面客戶端使用此代碼在屏幕上的命令按鈕單擊事件。

  Microsoft.LightSwitch.Threading.Dispatchers.Main.BeginInvoke(() => 
      { 
       if (AutomationFactory.IsAvailable) 
       { 
        dynamic shell = AutomationFactory.CreateObject("Shell.Application"); 

        shell.ShellExecute("http://localhost:55722/Home/Index"); 
       } 
       else if (!System.Windows.Application.Current.IsRunningOutOfBrowser) 
       { 
        HtmlPage.Window.Navigate(new Uri("http://localhost:55722/Home/Index"), "_blank"); 
       } 
       else 
       { 
        throw new InvalidOperationException(); 
       } 
      }); 

此代碼在當前/打開的瀏覽器選項卡中打開我的頁面。

可以請您指教如何在桌面客戶端打開瀏覽器窗口的屏幕上的命令按鈕點擊事件。

你的答案會很明顯! :)

感謝,

Jatin

+0

是否需要爲所有瀏覽器工作的解決方案,還是您將自己限制爲特定的解決方案? – BobbyJ

+0

我想打開默認瀏覽器。不是一個問題......但要確保你的解決方案將打開瀏覽器窗口而不是LS桌面客戶端的新選項卡...如果你想要讓我知道未來的細節 –

回答

0

我試圖與IE瀏覽器,它每次打開一個新窗口:

dynamic shell = AutomationFactory.CreateObject("WScript.Shell"); 
shell.Run("iexplore.exe", 1, true); 

其他瀏覽器,但有些可能需要命令行參數每次打開一個新窗口。有關Chrome示例,請參閱Open a browser window as a pop under in C#

要檢測默認瀏覽器,您可以從註冊表中的相應位置讀取數據,如Access registry from Silverlight OOB中所示。

相關問題