方法: アドインの既定のアイコンを変更する
Visual Studio のアドイン プロジェクトを使用して作成したアドインのメニュー コマンドに関連付けるアイコンを変更することができます。アドイン プロジェクトは、[新しいプロジェクト] ダイアログ ボックスで [その他のプロジェクトの種類] を展開し、[機能拡張プロジェクト] をクリックすると表示されます。
アドイン プロジェクトを使用してアドインを作成するときに、アドイン ウィザードで [アドイン用のコマンド バー UI を作成しますか?] チェック ボックスをオンにすると、そのアドインに対してユーザー インターフェイス (UI) を追加できます。
テンプレートにより、アドインを開くコマンドが [ツール] メニューに作成されます。既定では、コマンドの隣にスマイル アイコンが表示されます。このアイコンは、次のいずれかの方法によって変更できます。
アイコン インデックス番号 (既定のアイコンの場合は 59) を Microsoft.VisualStudio.CommandBars アセンブリの別のアイコンの番号に変更します。このアセンブリには約 3,000 個のアイコンが含まれています。
会社のロゴなど、カスタムのビットマップを定義して、それをリソースとしてサテライト DLL にコンパイルし、新しいビットマップを参照するようにアドインのコードを変更します。
最初の方法の方が簡単ですが、Microsoft.VisualStudio.CommandBars のアイコンしか使用できません。2 番目の方法では、任意のアイコンを使用できます。
[!メモ]
お使いのマシンで、Visual Studio ユーザー インターフェイスの一部の要素の名前や場所が、次の手順とは異なる場合があります。これらの要素は、使用している Visual Studio のエディションや独自の設定によって決まります。詳細については、「Visual Studio の設定」を参照してください。
現在のアイコンを別のアイコンに変更するには
アドイン プロジェクトを使用して作成したソリューションを開きます。
プロジェクト ファイルの OnConnection メソッドで、次の行を探します。
command = commands.AddNamedCommand2(_addInInstance, _ "MyAddin1", "MyAddin1", _ "Executes the command for MyAddin1", True, 59, Nothing, _ CType(vsCommandStatus.vsCommandStatusSupported, _ Integer) + CType(vsCommandStatus.vsCommandStatusEnabled, _ Integer), vsCommandStyle.vsCommandStylePictAndText, _ vsCommandControlType.vsCommandControlTypeButton)
Command command = commands.AddNamedCommand2(_addInInstance, "MyAddin1", "MyAddin1", "Executes the command for MyAddin1", true, 59, ref contextGUIDS, (int)vsCommandStatus. vsCommandStatusSupported+(int)vsCommandStatus. vsCommandStatusEnabled, (int)vsCommandStyle. vsCommandStylePictAndText, vsCommandControlType .vsCommandControlTypeButton);
AddNamedCommand2 呼び出しの 59 という番号に注目してください。これが現在のアイコンのインデックスです。別の標準アイコンに変更するには、この番号を変更します。たとえば、アイコンを赤色の星印に変更するには、59 を 6743 に変更します。アドインを実行すると、[ツール] メニューにコマンドと赤色の星型アイコンが表示されます。
標準アイコンの ID 番号を検索する方法については、MSDN Web サイトの「Microsoft Office System におけるマネージ コード アドインでのカスタム ボタン フェイス」を参照してください。
Microsoft.VisualStudio.CommandBars ライブラリに適切なアイコンが見つからない場合は、カスタムのビットマップを使用できます。ビットマップをリソースとしてサテライト DLL にコンパイルします。詳細については、「方法: アドイン ボタンにカスタム アイコンを表示する」を参照してください。サテライト DLL リソースを作成したら、それを AddNamedCommand2 で参照します。