다음을 통해 공유


Solution2.IsOpen 속성

솔루션이 열려 있는지 나타내는 값을 가져옵니다.

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

구문

‘선언
ReadOnly Property IsOpen As Boolean
bool IsOpen { get; }
property bool IsOpen {
    bool get ();
}
abstract IsOpen : bool with get
function get IsOpen () : boolean

속성 값

형식: Boolean
솔루션이 열려 있으면 true이고, 그렇지 않으면 false입니다.

설명

솔루션이 열려 있더라도 아직 이 솔루션을 저장하지 않았을 수 있으므로 솔루션 파일(.sln)이 없을 수 있습니다.

예제

이 추가 기능 코드를 실행하는 방법에 대한 내용은 방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행을 참조하십시오.

다음 예제에서는 솔루션의 IsOpen 상태를 표시합니다.

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)
    IsOpenExample(_applicationObject)
End Sub

Sub IsOpenExample(ByVal dte As DTE2)
    ' This add-in displays the IsOpen status of the solution.
    ' Open a solution in 
    ' Visual Studio before running this example.
    Try
        Dim soln As Solution2 = CType _
        (_applicationObject.Solution, Solution2)
        Dim solnName As String = _
        System.IO.Path.GetFileNameWithoutExtension(soln.FullName)
        MsgBox("Solution " & solnName & _
        " has the following IsOpen state:" & _
        vbCrLf & vbCrLf & soln.IsOpen.ToString())
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
//you will need to add this reference to your project as well
using System.Windows.Forms;
public void OnConnection(object application,
 Extensibility.ext_ConnectMode connectMode, object addInInst,
 ref System.Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    IsOpenExample((DTE2)_applicationObject);
}
public void IsOpenExample(DTE2 dte)
{
    // This add-in determines if a solution is open. 
    // Open a solution in 
    // Visual Studio before running this example.
    try
    {
        Solution2 soln = (Solution2)_applicationObject.Solution;
        string solnName =
 System.IO.Path.GetFileNameWithoutExtension(soln.FullName);
        MessageBox.Show("Solution " + solnName + " IsOpen status is: "
 + soln.IsOpen.ToString());
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

.NET Framework 보안

참고 항목

참조

Solution2 인터페이스

EnvDTE80 네임스페이스

기타 리소스

방법: 자동화 개체 모델 코드의 예제 컴파일 및 실행