다음을 통해 공유


SolutionEvents 인터페이스

솔루션을 변경하면 이벤트를 제공합니다. 이 개체를 사용하여 기능을 수행합니다. 이 개체에 대한 설명을 보려면 SolutionEventsClass를 참조하십시오.

네임스페이스:  EnvDTE
어셈블리:  EnvDTE(EnvDTE.dll)

구문

‘선언
<GuidAttribute("BF8BBF37-5415-46A9-940D-594CAD9DEC26")> _
Public Interface SolutionEvents _
    Inherits _SolutionEvents, _dispSolutionEvents_Event
[GuidAttribute("BF8BBF37-5415-46A9-940D-594CAD9DEC26")]
public interface SolutionEvents : _SolutionEvents, 
    _dispSolutionEvents_Event
[GuidAttribute(L"BF8BBF37-5415-46A9-940D-594CAD9DEC26")]
public interface class SolutionEvents : _SolutionEvents, 
    _dispSolutionEvents_Event
[<GuidAttribute("BF8BBF37-5415-46A9-940D-594CAD9DEC26")>]
type SolutionEvents =  
    interface 
        interface _SolutionEvents 
        interface _dispSolutionEvents_Event 
    end
public interface SolutionEvents extends _SolutionEvents, _dispSolutionEvents_Event

SolutionEvents 형식에서는 다음과 같은 멤버를 노출합니다.

메서드

  이름 설명
Public 메서드 add_AfterClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_BeforeClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_Opened 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_ProjectAdded 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_ProjectRemoved 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_ProjectRenamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_QueryCloseSolution 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 add_Renamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_AfterClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_BeforeClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_Opened 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_ProjectAdded 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_ProjectRemoved 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_ProjectRenamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_QueryCloseSolution 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 메서드 remove_Renamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)

위쪽

이벤트

  이름 설명
Public 이벤트 AfterClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 BeforeClosing 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 Opened 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 ProjectAdded 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 ProjectRemoved 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 ProjectRenamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 QueryCloseSolution 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)
Public 이벤트 Renamed 인프라입니다. Microsoft 내부용입니다. (_dispSolutionEvents_Event에서 상속됨)

위쪽

설명

SolutionEvents 개체는 솔루션이 닫히기 전에 범위를 벗어나 가비지 수집될 수 있습니다. 이 개체에 대한 참조를 유지하려면 솔루션 이벤트 처리기를 구현하는 클래스에 전용 변수를 선언하십시오.

예제

public class Connect : IDTExtensibility2
{
    private SolutionEvents _solnEvents;

    public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom)
    {
        _applicationObject = (DTE2)application;
        _addInInstance = (AddIn)addInInst;

        _solnEvents = _applicationObject.Events.SolutionEvents;

        _solutionBeforeClosingEventHandler = new _dispSolutionEvents_BeforeClosingEventHandler(this.SolutionBeforeClosing);
        _solnEvents.BeforeClosing += _solutionBeforeClosingEventHandler;
    }

    private _dispSolutionEvents_BeforeClosingEventHandler _solutionBeforeClosingEventHandler

    private void SolutionBeforeClosing()
    {
        System.Windows.Forms.MessageBox.Show("SolutionBeforeClosing");
    }
}

참고 항목

참조

EnvDTE 네임스페이스