4

拡張機能を作成しようとしていて、コードから 2 つのコマンドを呼び出す必要があります...

  • SolutionExplorer.SyncWithActiveDocument
  • ソリューション エクスプローラーの [すべて折りたたむ] コマンド。

とにかくこれらの関数を呼び出す方法が見つかりません。

誰もこれを行う方法を知っていますか?

4

1 に答える 1

4

DTE 経由でコマンドを実行しようとしましたか?

dte.Windows.Item(EnvDTE.Constants.vsWindowKindSolutionExplorer).Activate(); 

// Sync with Active Document
dte.ExecuteCommand("SolutionExplorer.SyncWithActiveDocument");

// Collapse All
int cmdidSolutionExplorerCollapseAll = 29;
Guid guidCMDSETID_StandardCommandSet11 = new Guid("D63DB1F0-404E-4B21-9648-CA8D99245EC3");
dte.Commands.Raise(guidCMDSETID_StandardCommandSet11.ToString("B"), cmdidSolutionExplorerCollapseAll, null, null);

他のコマンドの ID を特定する必要がある場合は、VSIP ログを有効にすることができます: http://blogs.msdn.com/b/dr._ex/archive/2007/04/17/using-enablevsiplogging-to-identify -menus-and-commands-with-vs-2005-sp1.aspx

于 2012-10-02T06:30:40.837 に答える