VSWebSiteEvents - интерфейс
Обновлен: Ноябрь 2007
Предоставляет доступ к коллекциям событий в проекте веб-узла.
Пространство имен: VsWebSite
Сборка: VsWebSite.Interop (в VsWebSite.Interop.dll)
Синтаксис
'Декларация
<GuidAttribute("9F1B1C2C-FA11-44AB-A7DA-926FF1927C70")> _
Public Interface VSWebSiteEvents
'Применение
Dim instance As VSWebSiteEvents
[GuidAttribute("9F1B1C2C-FA11-44AB-A7DA-926FF1927C70")]
public interface VSWebSiteEvents
[GuidAttribute(L"9F1B1C2C-FA11-44AB-A7DA-926FF1927C70")]
public interface class VSWebSiteEvents
public interface VSWebSiteEvents
Заметки
Этот интерфейс доступен через свойство VSWebSiteEvents объекта VSWebSite, который можно получить только через ссылку на текущий проект Visual Studio, как показано в следующем примере:
Dim ws As VsWebSite.VSWebSite = DTE.Solution.Projects.Item(1).Object
Примечание. |
---|
Предоставляемые этим классом функциональные возможности доступны в версиях Visual Studio, начиная с Visual Studio 2005. Они недоступны в экспресс-выпуске Visual Web Developer. |
Примеры
В следующем примере кода макроса показано, как подписаться на событие VSWebSite. Для использования модуля необходимо открыть проект веб-узла в Visual Studio и с помощью меню Сервис открыть среду разработки макросов. Затем необходимо создать новый модуль и вставить в него код из примера.
Также необходимо добавить в модуль ссылку на сборку VsWebSite.Interop. Инициализировать подписку на событие можно, разместив курсор на методе InitEvents() и нажав кнопку F5. Для проверки каждого события необходимо выполнить указанное действие в проекте веб-узла. Дополнительные сведения см. в разделе Практическое руководство. Обработка событий в макросе.
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports VsWebSite
Imports System.Diagnostics
Public Module VsWS_Events
' Initialize the VsWebSite and the Events
Sub InitAssemblyRefsEvents()
' Get a reference to the first Web site
' in the current solution
Dim ws As VsWebSite.VSWebSite = _
DTE.Solution.Projects.Item(1).Object
' Attach the Web site events to module events
AssemblyRefsEvents = _
ws.VSWebSiteEvents.AssemblyReferencesEvents
End Sub
' Declare the event
' The macro IDE requires the attribute
' in order to trap the events
<System.ContextStaticAttribute()> _
Public WithEvents AssemblyRefsEvents As _
VsWebSite.AssemblyReferencesEvents
<System.ContextStaticAttribute()> _
Public WithEvents MiscEvents As _
VsWebSite.WebSiteMiscEvents
<System.ContextStaticAttribute()> _
Public WithEvents WebRefsEvents As _
VsWebSite.WebReferencesEvents
<System.ContextStaticAttribute()> _
Public WithEvents WebSvcsEvents As _
VsWebSite.WebServicesEvents
' Handler for the AssemblyReferenceAdded event
' Test: Add an Assembly Reference to your Web site project
Private Sub AssemblyRefAdded _
(ByVal ref As VsWebSite.AssemblyReference) _
Handles AssemblyRefsEvents.AssemblyReferenceAdded
' Display the name of the added reference
MsgBox("Assembly Added: " & ref.Name)
End Sub
' Handler for the After Refresh Folder event
' Test: Refresh a folder in your Web site project
Private Sub AfterRefresh _
(ByVal ref As Object) _
Handles MiscEvents.OnAfterFolderRefresh
' Display the folder as text
MsgBox("Folder Refreshed: " & ref.ToString())
End Sub
' Handler for the Web Reference Added event
' Test: Add a Web Reference to your Web site project
Private Sub WebRefAdded _
(ByVal ref As VsWebSite.WebReference) _
Handles WebRefsEvents.WebReferenceAdded
' Display the name of the added reference
MsgBox("Web Reference Added: " & ref.Name)
End Sub
' Handler for the Web Service Added event
' Test: Add a Web service to your Web site project
Private Sub WebSvcAdded _
(ByVal ref As VsWebSite.WebService) _
Handles WebSvcsEvents.WebServiceAdded
' Display the name of the added item
MsgBox("Web Service Added: " & ref.Name)
End Sub
End Module
См. также
Ссылки
VsWebSite
Другие ресурсы
Справочник по автоматизации и возможностям расширения среды