IVsAsyncShellOpenDocument.OpenStandardEditorAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Открывает файл с помощью стандартного редактора. Сначала он определит, настроена ли фабрика редактора по умолчанию для файла. Если значение по умолчанию еще не настроено, оно будет перебирать список фабрик редактора с сортировкой по приоритету, чтобы найти первую фабрику, поддерживающую документ. Исключение возникает, если не удается открыть документ.
public Microsoft.VisualStudio.Shell.Interop.IVsTask OpenStandardEditorAsync (uint openStandardEditorFlags, string documentMoniker, Guid logicalView, string? ownerCaption, Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy? hierarchy, uint itemId, bool shouldGetDocDataFromRdt, object? docData, Microsoft.VisualStudio.OLE.Interop.IServiceProvider serviceProvider);
abstract member OpenStandardEditorAsync : uint32 * string * Guid * string * Microsoft.VisualStudio.Shell.Interop.IVsUIHierarchy * uint32 * bool * obj * Microsoft.VisualStudio.OLE.Interop.IServiceProvider -> Microsoft.VisualStudio.Shell.Interop.IVsTask
Public Function OpenStandardEditorAsync (openStandardEditorFlags As UInteger, documentMoniker As String, logicalView As Guid, ownerCaption As String, hierarchy As IVsUIHierarchy, itemId As UInteger, shouldGetDocDataFromRdt As Boolean, docData As Object, serviceProvider As IServiceProvider) As IVsTask
Параметры
- openStandardEditorFlags
- UInt32
Флаги, значения которых взяты из перечисления __VSOSEFLAGS или __VSOSEFLAGS2 .
- documentMoniker
- String
Строковая форма уникального идентификатора моникера документа в системе проектов, например полный путь к файлу. В случаях, когда документ не является файлом, этот идентификатор часто имеет вид URL-адреса.
- logicalView
- Guid
Объект , Guid определяющий логическое представление. По умолчанию используется представление , VSConstants.LOGVIEWID_Primary
и каждый редактор должен поддерживать это представление.
Если редактор реализует IVsMultiViewDocumentView в объекте представления документа, значение, передаваемое в ActivateLogicalView(Guid), определяет, какое представление активируется при отображении окна редактора.
Указав логическое представление Guid, можно запросить конкретное представление, соответствующее причине запроса представления.
Например, укажите VSConstants.LOGVIEWID_Debugging
для получения представления, подходящего для отладки, или VSConstants.LOGVIEWID_TextView
для получения представления, подходящего для текстового редактора (т. е. представления, которое реализует IVsCodeWindow).
- ownerCaption
- String
Начальное подпись определяется владельцем документа (т. е. проектом) для окна документа. Часто имеет следующий формат: "Имя проекта – имя элемента".
- hierarchy
- IVsUIHierarchy
Ссылка на IVsUIHierarchy объект , которому принадлежит документ.
- itemId
- UInt32
Идентификатор элемента иерархии пользовательского интерфейса стандартного редактора. Дополнительные сведения см. в разделе VSConstants.VSITEMID
.
- shouldGetDocDataFromRdt
- Boolean
Если true
задано значение , среда будет использовать объект данных документации, полученный из таблицы выполняющихся документов; в противном случае служба откроет документ, используя данные документа, переданные в docData
.
- docData
- Object
Ссылка на объект данных документа открываемого элемента или null
. Это значение, переданное в этот параметр, игнорируется, если shouldGetDocDataFromRdt
имеет значение true
.
- serviceProvider
- IServiceProvider
Ссылка на IServiceProvider.
Возвращаемое значение
Задача, представляющая, что операция открытия запущена.
Результатом задачи является ссылка на IVsAsyncOpenDocumentResult, если документ был открыт в среде; в противном случае — значение null
.
Комментарии
Задача, возвращаемая этим методом, не указывает, что представление документа и данные docdata были загружены. Дополнительные сведения см. в статье DocumentLoadTask.
Этот метод использует результат CreateEditorInstance(UInt32, String, String, IVsHierarchy, UInt32, IntPtr, IntPtr, IntPtr, String, Guid, Int32) , чтобы определить, следует ли продолжить переход к следующему редактору в списке, чтобы найти поддерживаемую фабрику редактора. В частности, он должен возвращать одно из следующих значений: 1. S_OK
значение , чтобы указать, что циклирование должно прекратиться, если редактор поддерживает файл и успешно инициализирован 2. "VS_E_UNSUPPORTEDFORMAT"
значение , чтобы указать, что следует продолжить цикл, если редактор не поддерживает предоставленные данные документации 3. Любой другой код ошибки, указывающий на то, что цикл должен прекратиться.