Compartir a través de


Solution2.IsOpen (Propiedad)

Obtiene un valor que indica si está abierta una solución.

Espacio de nombres:  EnvDTE80
Ensamblado:  EnvDTE80 (en EnvDTE80.dll)

Sintaxis

'Declaración
ReadOnly Property IsOpen As Boolean
    Get
bool IsOpen { get; }
property bool IsOpen {
    bool get ();
}
abstract IsOpen : bool
function get IsOpen () : boolean

Valor de propiedad

Tipo: System.Boolean
true si una solución está abierta; de lo contrario, false.

Implementaciones

_Solution.IsOpen

Comentarios

Una solución abierta no tiene necesariamente un archivo de solución (.sln) porque puede que aún no se haya guardado.

Ejemplos

Para obtener información sobre cómo ejecutar este código de complemento, vea Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización.

En el siguiente ejemplo se muestran el estado IsOpen de una solución.

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);
    }
}

Seguridad de .NET Framework

Vea también

Referencia

Solution2 Interfaz

IsOpen (Sobrecarga)

EnvDTE80 (Espacio de nombres)

Otros recursos

Cómo: Compilar y ejecutar los ejemplos de código del modelo de objetos de automatización