VSTO を使用して MS Word 2010 のアドオンを開発しています。Word には「キーボードのカスタマイズ」ダイアログがあります。
「コマンド」リストには、メニューまたはアクションにそれぞれ割り当てられた組み込みマクロ コマンドが含まれています。メソッドを使用して VSTO から実行できますApplication.Run()
。
現在インストールされている Word のインスタンスについて、「メニュー項目名」-「マクロ コマンド名」-「キーボード ショートカット」の形式でレコードを取得する必要があります。
私がこれまでに試したこと:
Application.CustomizationContext = Application.NormalTemplate;
foreach (CommandBar bar in Application.CommandBars)
{
// Name of menu group
Application.Selection.InsertAfter(bar.NameLocal + "\n");
foreach (CommandBarControl control in bar.Controls)
{
// Human-readable name
Application.Selection.InsertAfter("\nName:" + control.accName
// Broad description
+ "\nDescription:" + control.DescriptionText
// Keyboard shortcut
+ "\nShortcut:" + control.accKeyboardShortcut);
}
}
残念ながらCommandBarControl
、マクロ コマンド名フィールドは含まれていません。これをどうやってまとめて接着しようか迷っています。