Partilhar via


Propriedade VSProjectEvents2.BuildManagerEvents

Obtém um objeto de BuildManagerEvents que fornece acesso a eventos de BuildManager .

Namespace:  VSLangProj80
Assembly:  VSLangProj80 (em VSLangProj80.dll)

Sintaxe

'Declaração
ReadOnly Property BuildManagerEvents As BuildManagerEvents
BuildManagerEvents BuildManagerEvents { get; }
property BuildManagerEvents^ BuildManagerEvents {
    BuildManagerEvents^ get ();
}
abstract BuildManagerEvents : BuildManagerEvents with get
function get BuildManagerEvents () : BuildManagerEvents

Valor de propriedade

Tipo: BuildManagerEvents
Um objeto BuildManagerEvents.

Comentários

Os eventos de BuildManagerEvents são usados para controlar as alterações feitas para projetar os itens que estão associados com ferramentas personalizadas. O evento de DesignTimeOutputDirty indica que um item de projeto foi adicionado ou alterado. O evento de DesignTimeOutputDeleted indica que um item de projeto foi excluído. Para obter mais informações, consulte BuildManager.

Exemplos

Este exemplo conecta métodos de manipulação de eventos a DesignTimeOutputDeleted e os eventos de DesignTimeOutputDirty para um projeto específico usando Events objeto. Para obter mais informações sobre como executar exemplos macros, consulte Como compilar e executar os exemplos de código do modelo de objeto Automation.

Abrir um projeto de Visual Basic ou de Visual C# antes de executar esses macros.

' Macro Editor
' Connects events in a Visual Basic or Visual C# project.
Imports VSLangProj
Imports VSLangProj80
Sub ConnectEvents()
   Dim proj As Project = DTE.Solution.Projects.Item(1)
   Dim vsproj As VSProject2 = CType(proj.Object, VSProject2)
   Dim buildman As BuildManagerEvents = vsproj.Events.BuildManagerEvents
   AddHandler buildman.DesignTimeOutputDeleted, AddressOf OutputDeleted
   AddHandler buildman.DesignTimeOutputDirty, AddressOf OutputDirty
End Sub

Sub OutputDeleted(ByVal moniker As String)
   MsgBox("Output " & moniker & " was deleted.")
End Sub

Sub OutputDirty(ByVal moniker As String)
   MsgBox("Output " & moniker & " is dirty.")
End Sub

Os dois seguintes exemplos usam a propriedade de VBBuildManagerEvents de associação tardia para se conectar a eventos de projeto de Visual Basic . Use a propriedade de CSharpBuildManagerEvents para se conectar a Visual C# eventos. Para obter mais informações sobre objetos específicos de eventos, consulte Objetos de evento (específicos a tipos de projetos).

Também há dois métodos de associação tardia para manipular eventos do objeto de BuildManager . O primeiro método permite que você manipule eventos para um projeto específico e requer a declaração deOption Strict Offcompilar. O parâmetro a VBImportsEvents é opcional. Se for omitido, os eventos para todos os projetos de Visual Basic na solução são recebidos. Esse método retorna um erro se o parâmetro a chamada de VBBuildManagerEvents não é do tipo Project. Para obter mais informações sobre objetos específicos de eventos, consulte Objetos de evento (específicos a tipos de projetos).

' Macro editor
Option Strict Off
Imports VSLangProj
Dim WithEvents buildEvents As BuildManagerEvents
Sub ConnectProjectBuildManagerEvents()
   Dim proj As Project = DTE.Solution.Projects.Item(1)
   buildEvents = DTE.Events.VBBuildManagerEvents(proj)
End Sub

Public Sub buildEvents_DesignTimeOutputDeleted(ByVal bstrOutputMoniker _
As String) Handles buildEvents.DesignTimeOutputDeleted
   MsgBox(bstrOutputMoniker)
End Sub

O segundo método de associação tardia permite a você responder a eventos para todos os projetos na solução. Este método não oferece uma maneira de eventos para filtrar somente um projeto específico. Irá compilar com Option Strict On.

' Macro editor
Imports VSLangProj
Dim WithEvents buildEvents As VSLangProj.BuildManagerEvents
Sub ConnectAllBuildManagerEvents()
   buildEvents = CType(DTE.Events.GetObject("VBBuildManagerEvents"), _
      BuildManagerEvents)
End Sub

Public Sub buildEvents_DesignTimeOutputDeleted(ByVal bstrOutputMoniker _
As String) Handles buildEvents.DesignTimeOutputDeleted
   MsgBox(bstrOutputMoniker)
End Sub

Segurança do .NET Framework

Consulte também

Referência

VSProjectEvents2 Interface

Namespace VSLangProj80

Outros recursos

Instrução Option Strict