locked
WebBrowserコントロールに戻る・進むメソッドがない RRS feed

  • 質問

  • こんばんは、CH3COOH(酢酸)です。

    Windows Mobileアプリの移植を進めているのですが、
    WinFormでは使用出来ていたWebBrowserコントロールの「戻る」や「進む」にあたる
    GoBackメソッドやGoForwardメソッドが無いようです。

    Windows Phone 7のWebBrowserコントロールでは、「戻る」や「進む」は使えないのでしょうか?
    また代用する方法がありましたらご教授頂けないでしょうか。

    以上、よろしくお願いします。

     

    • 移動 Mike Wang (MSCS) 2012年10月2日 11:07 (移動元:Windows Phone 7 向けの開発)
    2011年4月5日 16:11

回答

すべての返信

  • 以前に同じ問題に悩んでいて、結局自作してしまった方がいたのでリンク貼っておきますね。

    Full Web Browser Control for Windows Phone 7

    エントリ本文の終わり近くに、ソースコードへのリンクがあります。


    • 回答としてマーク Kenji Wada 2011年4月8日 7:03
    2011年4月6日 0:55
  • ありがとうございます。ご紹介頂いたFull Web Browser Control、これはとても便利そうですね。

    別のプロジェクトを使わずに簡単に実装したい場合は、JavaScriptを使用する方法が使えそうです。
    (Windows Phone 7のブラウザコントロールで戻るを実装する方法。)

    IsScriptEnabledプロパティにTrueと指定しておくことでJavaScriptを使用する事が出来ます。
    WebBrowserコントロールのIsScriptEnabledプロパティのデフォルト値はFlaseが設定されていますので、
    明示的にTrueを指定しておきます。

      <phone:WebBrowser Name="webBrowser1" Source="http://ch3cooh.jp/" 
        IsScriptEnabled="True" />
    
    InvokeScriptメソッドを使用して、ブラウザ内で戻ったり進んだり更新するJavaScriptを実行します。
      private void GoBack()
      {
        webBrowser1.InvokeScript("eval", "history.back()");
      }
     
      private void GoForward()
      {
        webBrowser1.InvokeScript("eval", "history.forward()");
      }
     
      private void Refresh()
      {
        webBrowser1.InvokeScript("eval", "location.reload()");
      }
    
    手軽に「戻る」「進む」「更新」が実装したい場合は、JavaScriptを使うという選択肢も取れそうですね。
    2011年4月8日 7:02