2

ユーザーがテキストを選択して右クリックしたときに表示されるメニューにカスタムメニュー項目を追加したいと思います。たくさん検索しましたが、返事がありませんでした。たぶん私は正しいキーワードを入れていませんでした。

  1. これを行うことは可能ですか?
  2. これが可能であれば、ユーザーがテキストを選択するたびに、Windowsのすべてのアプリケーションに対してこれを実行したいと思います。それを行うための普遍的な方法はありますか、またはアプリケーションに固有のコードを作成する必要がありますか?

私はC#を使用しています。

4

3 に答える 3

0

一般的な方法は、基本的に「カスタム シェル拡張機能」を作成することです。これを行う方法については、CodeProject に関する記事があります。

カスタム シェル拡張

http://www.codeproject.com/Articles/174369/How-to-Write-Windows-Shell-Extension-with-NET-Lang

これを行うもう 1 つの方法は、これをアプリケーションに組み込むことです。たとえば、テキスト エディターがあり、単語を強調表示してその単語の定義を取得したい場合があります。これを行うには、コンテキスト メニューを実装する必要があります。VERY BASIC の概念については、CodeReview.StackExchange で詳しく説明されています。

https://codereview.stackexchange.com/questions/3983/c-programatically-creating-context-menu

于 2013-01-16T20:09:52.703 に答える
0

すべての Windows アプリで普遍的にできるとは思いません。しかし、ポップアップ メニューを使用して独自のアプリで実行することは確かに可能です。

于 2013-01-16T19:58:20.353 に答える
0

標準の ContextMenu にアイテムを追加する方法も試しましたが、失敗しました。私の見解では、唯一の解決策は、TextBox の ContextMenuStrip プロパティを ContextMenuStrip クラスのインスタンスに設定し、標準メニュー項目とカスタム メニュー項目の両方を実装することです。TextBox クラスは必要なすべてのメソッド (Cut、Copy、Paste、SelectAll) を提供するため、標準操作を簡単に模倣できます。

于 2013-01-16T20:00:49.450 に答える