C#の自動化でMS Word 2010のリボンをカスタマイズする
-
11-10-2019 - |
質問
C#アプリからMS Wordを自動化し、リボンUIの変更に問題を抱えています。私が見つけることができるすべてのサンプルは、追加からのみ利用可能なIribbonextensibilityインターフェイスを使用しています。自動化を使用してこれを行うことは可能ですか?
解決 2
私がしたことは、2つのインターフェイスを実装する小さなATL Addinを構築することでした。IDTextEnsibility2とIribbonextensibilityカスタマイズXMLはファイルから単純にロードされます。
C#コード内では、コーディングは本当に簡単です:
RegistryKey key = Registry.CurrentUser.CreateSubKey(@"Software\Microsoft\Office\Word\Addins\RibbonLoaderLib.RibbonLoader");
key.SetValue("LoadBehavior",2,RegistryValueKind.DWord);
key.SetValue("Description","Ribbon Loader Add-In",RegistryValueKind.String);
key.SetValue("FriendlyName","Ribbon Loader Add-In",RegistryValueKind.String);
wordApp_.COMAddIns.Item("RibbonLoaderLib.RibbonLoader").Connect = true;
他のヒント
Addinsのみから利用可能なIribbonextensibilityインターフェイスを使用します
つまり、自動化を介して機能しないことを意味します。インターフェイスは、プロセスの型ライブラリに露出していません。 VSTOを使用してアドインを書き、C# + Office + Word 2007アドインプロジェクトテンプレートを使用して開始する必要があります。
所属していません StackOverflow