Web ブラウザー コントロールで提供される既定のコンテキスト メニューのメニュー項目を変更します。私はすでに試しました: webbrowser.contextmenu = mycontextmenu. 何も変わっていません。これを行う方法はありますか?
4 に答える
答え - はい。webbrowser コントロールには次の設定があります。
これを false に設定すると、IE コンテキスト メニューが無効になり、設定したものがルートを支配できるようになります。シンプルな..
私は同じことをしようとしています。コードプロジェクトの記事を 5 つほど読みましたが (ちなみに古いものです)、COM 相互運用部分を正しく理解できませんでした。おそらく、C++でプログラミングできないからです。
しかし、私はこのページhttp://www.pinvoke.net/default.aspx/Interfaces/IDocHostUIHandler.htmlを見つけました。必要な機能を提供すると主張する ac# インターフェイスが含まれています。しかし、私はまだそれを完全に機能させることができなかったので、他の誰かがこの回答に貢献できれば幸いです.
あなたが c# にどの程度精通しているかはわかりません (ちなみに、私はかなり初心者です)。VS2008 を使用して、いくつかの追加の手順をここに投稿します。プロジェクトへの参照として Microsoft.mshtml を追加し、新しい c# インターフェイスを作成し、インターフェイスの上に 3 つの "using" ステートメントを追加します。
using System.Windows;
using System.Runtime.InteropServices;
using mshtml;
そしてインターフェース定義のコードを貼り付けます。次に、WebBrowser コンテナーにこのインターフェイスとすべてのメソッドを実装させます。これは、私が今までに得た距離です。ブラウザのイベントをコンテナにリダイレクトする方法をまだ探しています。
短い答えはノーです。詳細については、このスレッドを参照してください。