Solution2.Saved Property

Gets or sets a value indicating whether a solution has not been modified since last being saved or opened.

Namespace:  EnvDTE80
Assembly:  EnvDTE80 (in EnvDTE80.dll)

Syntax

'Declaration
Property Saved As Boolean
bool Saved { get; set; }
property bool Saved {
    bool get ();
    void set (bool value);
}
abstract Saved : bool with get, set
function get Saved () : boolean 
function set Saved (value : boolean)

Property Value

Type: Boolean
true if the object has not been modified since last being saved or opened; otherwise, false. The default is true.

Remarks

The Saved property replaces the IsDirty property in Visual Studio version 6.0, but it returns the opposite value of IsDirty.

Examples

For information on how to run this add-in code, see How to: Compile and Run the Automation Object Model Code Examples.

The following example displays the Saved state of an open solution.

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

Sub PropertiesExample(ByVal dte As DTE2)
    ' This add-in sets and gets the Saved status of a 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(solnName & " has the following Saved status: "  _
        & soln.Saved.ToString())
        MsgBox("Setting the Saved status to False")
        soln.Saved = False
            MsgBox(solnName & " now has the following Saved status: " & soln.Saved.ToString())
    Catch ex As System.Exception
        MsgBox(ex.ToString)
    End Try
End Sub
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.
    ProjectExample((DTE2)_applicationObject);
}

public void ProjectExample(DTE2 dte)
{
    // This add-in gets and sets the Saved status of a solution. 
    // 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(solnName + " has the following Saved status: "
 + soln.Saved.ToString());
        MessageBox.Show("Setting the Saved status to false...");
        soln.Saved = false;
        MessageBox.Show(solnName + 
" now has the following Saved status: " + soln.Saved.ToString());
    }
    catch(SystemException ex)
    {
        MessageBox.Show("ERROR: " + ex);
    }
}

.NET Framework Security

See Also

Reference

Solution2 Interface

EnvDTE80 Namespace

Other Resources

How to: Compile and Run the Automation Object Model Code Examples