IVsUserContext.AddSubcontext(IVsUserContext, Int32, UInt32) Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Связывает контейнер подконтекста с контейнером родительского контекста.
public:
int AddSubcontext(Microsoft::VisualStudio::Shell::Interop::IVsUserContext ^ pSubCtx, int lPriority, [Runtime::InteropServices::Out] System::UInt32 % pdwCookie);
int AddSubcontext(Microsoft::VisualStudio::Shell::Interop::IVsUserContext const & pSubCtx, int lPriority, [Runtime::InteropServices::Out] unsigned int & pdwCookie);
public int AddSubcontext (Microsoft.VisualStudio.Shell.Interop.IVsUserContext pSubCtx, int lPriority, out uint pdwCookie);
abstract member AddSubcontext : Microsoft.VisualStudio.Shell.Interop.IVsUserContext * int * uint32 -> int
Public Function AddSubcontext (pSubCtx As IVsUserContext, lPriority As Integer, ByRef pdwCookie As UInteger) As Integer
Параметры
- pSubCtx
- IVsUserContext
[in] Указатель на интерфейс IVsUserContext (контейнер вложенного контекста).
- lPriority
- Int32
[in] Приоритет вложенного контекста. Список значений lPriority
см. в VSUSERCONTEXTPRIORITY.
- pdwCookie
- UInt32
[out, retval] Указатель на уникальный идентификатор для вложенного контекста.
Возвращаемое значение
Если метод завершается успешно, возвращает значение S_OK. В противном случае функция возвращает код ошибки.
Комментарии
Подпись COM
Из context. IDL:
HRESULT IVsUserContext::AddSubcontext(
[in] IVsUserContext * pSubCtx,
[in] int lPriority,
[out, retval] VSCOOKIE * pdwCookie
);
Поставщик контекста может содержать элемент, для которого требуется конкретный вложенный контекст во время выполнения. Например, в окнах командной строки может потребоваться как контекст для командного окна, так и подконтекст для выделенного фрагмента. Чтобы добавить подконтекст для выбранного элемента в поставщике контекста, сначала необходимо создать контейнер подконтекста для хранения подконтекста. Дополнительные сведения см. в разделе Создание контекста или контейнера подконтекста. После создания контейнера подконтекстов вызовите, AddAttribute чтобы добавить атрибуты, ключевые слова поиска или ключевые слова F1 в контейнер подконтекста. Затем можно вызвать метод IVsUserContext.AddSubcontext
, чтобы связать контейнер подконтекста с родительским контейнером контекста.
Для контекстных контейнеров приоритет контекста автоматически назначается средой в зависимости от того, к чему привязан контекстный контейнер, например окно редактора, окно инструментов и т. д. Однако для подконтекста необходимо задать приоритет самостоятельно. В случае выбора в командном окне (окно инструментов) новому подконтексту присваивается lPriority
значение VSUC_Priority_ToolWndSel . При изменении команд в окне командной строки имя команды помещается в контейнер подконтекста.
IVsUserContext.AddSubcontext
Метод возвращает указатель на уникальный идентификатор для контейнера подконтекста в терминах контейнера контекста. Сохраните этот указатель и используйте его с RemoveSubcontext методом, чтобы удалить подконтекст.