WindowVisibilityEvents – rozhraní
Udává, zda ToolWindows jsou viditelné (skrýt nebo zobrazit).Tento objekt pomocí funkce a odkazují na WindowVisibilityEventsClass dokumentaci k tomuto objektu.
Obor názvů: EnvDTE80
Sestavení: EnvDTE80 (v EnvDTE80.dll)
Syntaxe
'Deklarace
<GuidAttribute("84DE07BC-43A2-4275-BCF9-D207D20E49ED")> _
Public Interface WindowVisibilityEvents _
Inherits _WindowVisibilityEvents, _dispWindowVisibilityEvents_Event
[GuidAttribute("84DE07BC-43A2-4275-BCF9-D207D20E49ED")]
public interface WindowVisibilityEvents : _WindowVisibilityEvents,
_dispWindowVisibilityEvents_Event
[GuidAttribute(L"84DE07BC-43A2-4275-BCF9-D207D20E49ED")]
public interface class WindowVisibilityEvents : _WindowVisibilityEvents,
_dispWindowVisibilityEvents_Event
[<GuidAttribute("84DE07BC-43A2-4275-BCF9-D207D20E49ED")>]
type WindowVisibilityEvents =
interface
interface _WindowVisibilityEvents
interface _dispWindowVisibilityEvents_Event
end
public interface WindowVisibilityEvents extends _WindowVisibilityEvents, _dispWindowVisibilityEvents_Event
Typ WindowVisibilityEvents zveřejňuje následující členy.
Metody
Název | Popis | |
---|---|---|
add_WindowHiding | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) | |
add_WindowShowing | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) | |
remove_WindowHiding | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) | |
remove_WindowShowing | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) |
Nahoru
Události
Název | Popis | |
---|---|---|
WindowHiding | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) | |
WindowShowing | Infrastruktura. Microsoft pouze pro interní použití. (Zděděno z _dispWindowVisibilityEvents_Event.) |
Nahoru
Příklady
Tento příklad používá připojení-v WindowVisibilityEvents.Následující kód například nahraďte kód v souboru Connect.vb nebo Connect.cs.Spustit v tomto doplňku a otevřít a Zavřít Příkazové okno a Výstupní okno v Visual Studio IDE zobrazit události zachycení metod v akci.Další informace o spuštění příkladů automatizace, viz Jak: kompilace a spuštění příkladů kódu automatizace objektu modelu.
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 showing.")
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
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 showing.");
}
}
}