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] Указатель на уникальный идентификатор для вложенного контекста.

Возвращаемое значение

Int32

Если метод завершается успешно, возвращает значение 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 методом, чтобы удалить подконтекст.

Применяется к