Freigeben über


WindowVisibilityEventsClass.WindowShowing-Ereignis

Diese API unterstützt die .NET Framework-Infrastruktur und ist nicht für die direkte Verwendung in Code bestimmt.

Wird aufgerufen, wenn ein Toolfenster sichtbar gemacht wird.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Syntax

'Declaration
Public Overridable Event WindowShowing As _dispWindowVisibilityEvents_WindowShowingEventHandler
public virtual event _dispWindowVisibilityEvents_WindowShowingEventHandler WindowShowing
public:
virtual  event _dispWindowVisibilityEvents_WindowShowingEventHandler^ WindowShowing {
    void add (_dispWindowVisibilityEvents_WindowShowingEventHandler^ value);
    void remove (_dispWindowVisibilityEvents_WindowShowingEventHandler^ value);
}
abstract WindowShowing : IEvent<_dispWindowVisibilityEvents_WindowShowingEventHandler,
    EventArgs>
override WindowShowing : IEvent<_dispWindowVisibilityEvents_WindowShowingEventHandler,
    EventArgs>
JScript unterstützt keine Ereignisse.

Implementiert

_dispWindowVisibilityEvents_Event.WindowShowing

Beispiele

In diesem Beispiel wird ein Add-In zum Herstellen einer Verbindung mit WindowVisibilityEvents verwendet. Ersetzen Sie den Code in der Datei Connect.vb oder Connect.cs durch den untenstehenden Beispielcode. Führen Sie das Add-In aus, und öffnen Sie das Befehlsfenster und das Ausgabefenster in der IDE von Visual Studio, und schließen Sie sie anschließend, um die Ereigniserfassungsmethoden in Aktion zu sehen. Weitere Informationen zum Ausführen der Automatisierungsbeispiele finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.

Imports System
Imports Microsoft.VisualStudio.CommandBars
Imports Extensibility
Imports EnvDTE
Imports EnvDTE80

Public Class Connect
    Implements IDTExtensibility2
    Dim applicationObject As DTE2
    Dim addInInstance As AddIn
    Public WithEvents windowsVisEvents As EnvDTE80.WindowVisibilityEvents
    Public Sub New()
    End Sub
    Public Sub OnConnection(ByVal application As Object, _
 ByVal connectMode As ext_ConnectMode, ByVal addInInst As Object, _
 ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    applicationObject = CType(application, DTE2)
    addInInstance = CType(addInInst, AddIn)
    Dim toolwin As EnvDTE80.ToolWindows
    toolwin = applicationObject.ToolWindows
    windowsVisEvents = CType(toolwin.DTE.Events, _
    Events2).WindowVisibilityEvents
End Sub
Private Sub windowsVisEvents_WindowHiding(ByVal Window As _
 EnvDTE.Window) Handles windowsVisEvents.WindowHiding
    MsgBox(Window.Caption & " is hiding.")
End Sub
Private Sub windowsVisEvents_WindowShowing(ByVal Window As _
 EnvDTE.Window) Handles windowsVisEvents.WindowShowing
    MsgBox(Window.Caption & " is hiding.")
End Sub
Public Sub OnDisconnection(ByVal disconnectMode _
 As ext_DisconnectMode, ByRef custom As Array) Implements  _
IDTExtensibility2.OnDisconnection
    windowsVisEvents = Nothing
End Sub
Public Sub OnAddInsUpdate(ByRef custom As Array) Implements _
 IDTExtensibility2.OnAddInsUpdate
End Sub
Public Sub OnStartupComplete(ByRef custom As Array) Implements _
 IDTExtensibility2.OnStartupComplete
End Sub
Public Sub OnBeginShutdown(ByRef custom As Array) Implements _
 IDTExtensibility2.OnBeginShutdown
End Sub
End Class
[C#]
namespace CS_Events_Code
{
using System;
using Microsoft.VisualStudio.CommandBars;
using Extensibility;
using EnvDTE;
using EnvDTE80;
using System.Windows.Forms;
  public class Connect : Object, IDTExtensibility2
  {
   public Connect()
   {
   }
   public void OnConnection(object application, ext_ConnectMode
 connectMode, object addInInst, ref Array custom)
    {
    applicationObject = (DTE2)application;
    addInInstance = (AddIn)addInInst;
    EnvDTE80.Events2 events = (EnvDTE80.Events2
 )applicationObject.Events;
    windowsVisEvents = 
(EnvDTE80.WindowVisibilityEvents)events.get_WindowVisibilityEvents
(null);
    // Connect to each delegate exposed from the windows visibiliy 
    // events object retrieved above
    windowsVisEvents.WindowHiding +=new 
_dispWindowVisibilityEvents_WindowHidingEventHandler
(this.WindowHiding); 
    windowsVisEvents.WindowShowing +=new 
_dispWindowVisibilityEvents_WindowShowingEventHandler
(this.WindowShowing);
   }
   public void OnDisconnection(ext_DisconnectMode disconnectMode,
 ref Array custom)
   {
    if (windowsVisEvents != null)
    {
        windowsVisEvents.WindowHiding -= new 
_dispWindowVisibilityEvents_WindowHidingEventHandler
(this.WindowHiding);
       windowsVisEvents.WindowShowing -= new 
_dispWindowVisibilityEvents_WindowShowingEventHandler
(this.WindowShowing);
   }
   }
   public void OnAddInsUpdate(ref Array custom)
   {
   }
public void OnStartupComplete(ref Array custom)
   {
   }
public void OnBeginShutdown(ref Array custom)
   {
   }
private DTE2 applicationObject;
private AddIn addInInstance;
private EnvDTE80.WindowVisibilityEvents windowsVisEvents;
public void WindowHiding(EnvDTE.Window winRef)
   {
    MessageBox.Show("The window " + winRef.Caption + " is hiding.");
   }
public void WindowShowing(EnvDTE.Window winRef)
   {
    MessageBox.Show("The window " + winRef.Caption + " is hiding.");
   }
  }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

WindowVisibilityEventsClass Klasse

EnvDTE80-Namespace