|
分類:[C#]
VS2005を利用し, C#で開発を行っています。
DesignerActionMethodItem item = new DesignerActionMethodItem(this, "HOGEName"HOGEText", "Hoge", true); といった形でスマートタグとプロパティウインドウ下の動詞パネルにコマンドを表示しています。
このコマンドが実行されると、スマートタグと動詞パネルの更新を行いたいと思っているのですが、 GetSortedActionItemsオーバーライドメソッドで、DesignerActionItemCollectionの更新を行い、
DesignerActionUIService service = (DesignerActionUIService)this.provider.GetService(typeof(DesignerActionUIService)); service.Refresh(this.component);
という記述でスマートタグの更新はかけられたのですが、 動詞パネルの更新がかかりません。
IMenuCommandService mcs = (IMenuCommandService)this.provider.GetService(typeof(IMenuCommandService)); mcs.Verbs.Clear();
とすると、動詞パネル内がクリアされたので、 このVerbsプロパティに設定すればいいと思うのですが、
DesignerActionMethodItem⇒DesignerVerbに変換する方法がわかりません。 DesignerActionMethodItemのリストをフィールドに保持しているので、こちらをできれば使いたいのです。。
なにか動詞パネルを更新するいい方法があれば、ご教授願います。
|