マクロを使用してソリューションをロードするときに、開いているコード ウィンドウ (つまり、ドキュメントを編集するウィンドウ) を列挙する方法は?
おそらくご存じのとおり、MSVS は開いたドキュメントを記憶します。つまり、ソリューションをロードすると、IDE は以前に開いたファイルをロードします。私がやりたいことは、ソリューションの読み込み時にこれらのウィンドウでいくつかのアクションを実行することです。
SolutionEvents_Opened ハンドラーでこれらのウィンドウにアクセスしようとしました。しかし、運が悪い - SolutionEvents_Opened が呼び出された時点では、言及されたウィンドウは利用できないようです。DTE.Documents は空で、DTE.Windows.Items には含まれていません。
次のようなコードが必要です。
Private Sub SolutionEvents_Opened() Handles SolutionEvents.Opened
Dim window As Window = DTE.Documents.Item(?).Windows // one of the opened windows
...
End Sub