We recommend using Visual Studio 2017
This documentation is archived and is not being maintained.

IVsPersistDocData Interface

Enables persistence functionality for document data managed by the text buffer.

Namespace:  Microsoft.VisualStudio.Shell.Interop
Assembly:  Microsoft.VisualStudio.Shell.Interop (in Microsoft.VisualStudio.Shell.Interop.dll)

public interface IVsPersistDocData

The IVsPersistDocData type exposes the following members.

Public methodCloseCloses the IVsPersistDocData object.
Public methodGetGuidEditorTypeReturns the unique identifier of the editor factory that created the IVsPersistDocData object.
Public methodIsDocDataDirtyDetermines whether the document data has changed since the last save.
Public methodIsDocDataReloadableDetermines whether the document data can be reloaded.
Public methodLoadDocDataLoads the document data from a given MkDocument.
Public methodOnRegisterDocDataCalled by the Running Document Table (RDT) when it registers the document data in the RDT.
Public methodReloadDocDataReloads the document data and in the process determines whether to ignore a subsequent file change.
Public methodRenameDocDataRenames the document data.
Public methodSaveDocDataSaves the document data.
Public methodSetUntitledDocPathSets the initial name (or path) for unsaved, newly created document data.

The environment's implementation of the DTE automation Document Object calls the following methods of IVsPersistDocData2:

IsDocDataReadOnly in get_ReadOnly property.

IsDocDataDirty in get_Saved property.

SetDocDataDirty in put_Saved property.

SetDocDataReadOnly in put_ReadOnly property.

GetGuidEditorType in get_Kind.

If your document persists to disk, the environment will also call ReloadDocData. See illustrations of the implementation and/or calling of this interface in the samples Basic Edit and Basic Project.


Implement IVsPersistDocData in collaboration with the text buffer when needing to persist document data.