2008-09-11 7 views
1

Wie werden geöffnete Codefenster (d. H. Die Fenster, in denen Sie Dokumente bearbeiten) nach dem Laden der Lösung mit Makros aufgelistet?Visual Studio-Automatisierung: Aufgezählte Fenster beim Laden der Lösung auflisten

Wie Sie wahrscheinlich wissen, erinnert MSVS geöffnete Dokumente, d. H. Wenn Sie eine Lösung laden, lädt IDE zuvor geöffnete Dateien. Was ich tun möchte, ist einige Aktionen mit diesen Fenstern nach dem Laden der Lösung durchzuführen.

Ich habe versucht, auf diese Fenster in SolutionEvents_Opened Handler zuzugreifen. Aber haben Sie kein Glück - es scheint, dass erwähnte Fenster im Moment nicht verfügbar sind SolutionEvents_Opened aufgerufen. DTE.Documents ist leer und DTE.Windows.Items enthält sie nicht.

Ich brauche einige Code wie:

Private Sub SolutionEvents_Opened() Handles SolutionEvents.Opened 
    Dim window As Window = DTE.Documents.Item(?).Windows // one of the opened windows 
    ... 
End Sub 

Antwort

1

Eine Möglichkeit, die ich gefunden habe das Fenster aufzuzählen, die auf DocumentEvents.DocumentOpened Ereignis ist, aber es löst es immer und nicht nur während der Beladung einer Lösung. Es scheint nicht, dass SolutionEvents.Opened nach meiner Erfahrung überhaupt ausgelöst wird, da sonst eine statische Variable darin geändert werden könnte.

This könnte helfen, es zu erklären.

Verwandte Themen