4

WPF WebBrowser コントロールを使用して PDF を表示しています。コンテキストメニューを無効にしたい。

私はすでに次のことを試しました -

  1. Internet Explorer コントロールのコンテキスト メニューを無効にする-

    コンストラクターで、次を追加しました-

    webBrowser.LoadCompleted +=new LoadCompletedEventHandler(webBrowser_LoadCompleted);
    
    // Event Handler
    public void webBrowser_LoadCompleted(object sender, NavigationEventArgs e )
    {
        webBrowser.ContextMenu = null;
        var t = webBrowser.Document as System.Windows.Forms.HtmlDocument;
        // t is always coming as null, even though I can clearly see the pdf in the web browser control.
        if(t != null)
        {
            t.ContextMenuShowing += new System.Windows.Forms.HtmlElementEventHandler(t_ContextMenuShowing);
        }
    }
    
  2. http://social.msdn.microsoft.com/forums/en-US/wpf/thread/7c283faf-16c8-4b4e-a362-f292e3032abb/もチェックしました。

    レジストリを設定するアプローチを使用しました - HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Internet Explorer\Restrictions\NoBrowserContextMenu を DWORD 1 に設定します。

    レジストリを設定すると、PDF が正しく表示されません。

    また、表示にPDFを使用しているため、-in body-を設定できません。

    oncontextmenu="return false;"
    
  3. IsWebBrowserContextMenuEnabledWPF Web ブラウザ コントロールを使用しているため、設定できません。

4

4 に答える 4

0

独自のコンテキスト メニューを表示したい PDF ビジュアライザーが原因である可能性があります。

どのコンテキスト メニューが表示されていますか? IE の 1 つまたは PDF ビジュアライザーの 1 つですか?

System.Windows.Forms.WebBrowserも使用してみます (WPF で使用できます)。WPF よりも多くの機能を備えているため、WPF アプリケーションで使用しました。

于 2013-02-14T18:56:01.387 に答える
-2

使うだけ

// Disable the Context menu inside the web browser
webBrowser1.IsWebBrowserContextMenuEnabled = false;

Windowsアプリケーションでこれを試しました

于 2013-09-26T12:37:27.713 に答える