__UIHWINFLAGS Перечисление

Определение

Контролирует характеристики окна иерархии пользовательского интерфейса.

Это перечисление имеет атрибут FlagsAttribute, который разрешает побитовое сочетание значений его элементов.

public enum class __UIHWINFLAGS
public enum class __UIHWINFLAGS
enum __UIHWINFLAGS
[System.Flags]
public enum __UIHWINFLAGS
[<System.Flags>]
type __UIHWINFLAGS = 
Public Enum __UIHWINFLAGS
Наследование
__UIHWINFLAGS
Атрибуты

Поля

UIHWF_ActAsProjectTypeWin 1

Определяет, отслеживает ли окно иерархии пользовательского интерфейса выделение среды.

UIHWF_DoNotSortRootNodes 2

По умолчанию используется альфа-сортировка на панелях инструментов с включенными заголовками в окне инструментов Уихиерарчивиндов. Используйте VSFPROPID_ToolbarHost для доступа к реализации IVsToolWindowToolbarHost окна.

UIHWF_ForceSingleSelect 8

Принудительно выбирает один узел в иерархии.

UIHWF_HandlesCmdsAsActiveHierarchy 16384

Это для окон, которые обрабатывают команды, являясь активной иерархией, даже если их иерархия не имеет фокуса (например, Проект/ Добавить элемент).

UIHWF_InitWithHiddenParentRoot 1024

Создает скрытую корневую иерархию, которая является родительской для ваших узлов верхнего уровня.

UIHWF_InitWithHiddenRootHierarchy 16

Указывает, что указатель IVsHierarchy, передаваемый с вызовом Init(IVsUIHierarchy, UInt32, Object), по сути является специальной скрытой корневой иерархией

UIHWF_LinesAtRoot 64

Стиль, заданный для представления дерева.

UIHWF_NoStateIcon 256

Указывает, показывает ли окно иерархии значки состояния. Представление в виде дерева может иметь две области значков, при этом значок состояния будет расположен с левого края. Например, в окне проекта значок состояния может показывать состояние возврата/извлечения элемента из системы управления версиями, тогда как обычный значок показывает обычный глиф для данного типа файла. Если нужно, чтобы окно иерархии не отображало значки состояния, то при вызове Init(IVsUIHierarchy, UInt32, Object) задайте этот флаг.

UIHWF_PropagateAltHierarchyItem 4096

Если этот параметр задан, когда UIHierarchy выбирает узел, UIHierarchy создает другие иерархии.

UIHWF_RouteCmdidDelete 8192

Контролирует обработку команды удаления в окне иерархии.

UIHWF_SortChildNodes 128

Указывает, должны ли сортироваться узлы, отличные от корневых, в окне иерархии, или должны быть оставлены в порядке, в котором их в окне иерархии перечисляет иерархия (VSHPROPID_FirstChild и VSHPROPID_NextSibling).

UIHWF_SupportToolWindowToolbars 4

Для управления функциями, относящимися к панели инструментов окна инструментов, вызовите GetProperty(Int32, Object), указав значение VSFPROPID_ToolbarHost. Это позволяет обращаться к реализации IVsToolWindowToolbarHost окна инструментов и добавить панель инструментов. Этот подход допустим только в том случае, если вызывается метод Init(IVsUIHierarchy, UInt32, Object) и значение UIHWF_SupportToolWindowToolbars задано для для параметра grfUIHWF.

UIHWF_UseSolutionAsHiddenRootHierarchy 32

Указывает, что указатель IVsHierarchy, передаваемый с вызовом Init(IVsUIHierarchy, UInt32, Object), по сути является специальной скрытой корневой иерархией.

Комментарии

Использование UIHWF_ActAsProjectTypeWin значения с параметром Init приводит к тому, что окно иерархии пользовательского интерфейса будет действовать как окно инструментов типа проекта. В этом случае окно иерархии пользовательского интерфейса отслеживает контекст глобальной выборки. Выбор всегда отображается, когда контекст глобальной области соответствует вложенному элементу независимо от того, имеет ли окно фокус. Если этот флаг не передается, окно иерархии пользовательского интерфейса выступает в качестве универсального окна инструментов, а значит, не будет относиться к глобальному контексту выделения и не будет рисовать выделенный фрагмент до тех пор, пока фокус не будет установлен.

Установка UIHWF_DoNotSortRootNodes флага отключает это поведение и приводит к отображению узлов в том порядке, в котором они были добавлены. Если сортировка выполняется по умолчанию, среда сначала проверяет, поддерживают ли иерархии VSHPROPID_SortPriority , и сортирует значения, возвращаемые этим свойством, перед возвратом к сортировке в алфавитном порядке по свойству Caption.

UIHWF_ForceSingleSelect принудительное выделение одного узла в иерархии. Например, окно иерархии пользовательского интерфейса с несколькими узлами верхнего уровня может использовать этот флаг для запрета множественного выбора. По умолчанию все окна иерархии пользовательского интерфейса поддерживают множественный выбор.

Окно иерархии пользовательского интерфейса с несколькими узлами верхнего уровня, которое хочет поддерживать множественный выбор, UIHWF_UseSolutionAsHiddenRootHierarchy указывает, что SID_SVsSolutionObject иерархия должна использоваться в качестве специальной скрытой корневой иерархии. Эта иерархия является тем же объектом, который обрабатывает множественные выделения для Обозреватель решений. В этом случае иерархия, переданная с вызовом, Init отображается в окне Иерархия пользовательского интерфейса.

UIHWF_InitWithHiddenParentRoot является альтернативой указанию UIHWF_InitWithHiddenRootHierarchy . Если вы хотите, чтобы скрытая корневая иерархия действительно была родителем узлов верхнего уровня (что в данном случае не обязательно будет отдельными иерархиями), укажите этот флаг. Если вы используете этот флаг, задайте VSITEMID_ROOT для этой иерархии значение VSHPROPID_ExpandByDefault , чтобы окно иерархии автоматически расширится для отображения узлов верхнего уровня.

Примечание

Вызов AddUIHierarchy в окне иерархии пользовательского интерфейса с этим флагом запрещен, так как все узлы верхнего уровня должны быть дочерними по отношению к скрытому родительскому корню.

UIHierarchyОкно, использующее несколько узлов верхнего уровня и желающее поддерживать несколько вариантов выбора, UIHWF_InitWithHiddenParentRoot указывает, что указатель, IVsHierarchy переданный с вызовом, на Init самом деле является специальной скрытой корневой иерархией. Эта иерархия не отображается в окне Иерархия пользовательского интерфейса, но используется, если выбран вариант иерархия с несколькими корневыми каталогами. Любые иерархии, которые необходимо отобразить, должны быть добавлены с помощью AddUIHierarchy .

UIHWF_LinesAtRoot стиль, заданный для представления в виде дерева. Этот член эквивалентен TVS_LINESATROOT. Он содержит знак плюса (+) на корневом узле.

Если UIHWF_PropagateAltHierarchyItem указано значение, то при UIHierarchy выборе узла он вызывается GetProperty дважды, один раз со значением VSHPROPID_AltHierarchy в propid параметре и один раз со значением VSHPROPID_AltItemid . В этом вызове иерархия может предоставить альтернативную иерархию и Идентификатор ItemID другой иерархии для контекста выбора. Это позволяет иерархии указать, какой Идентификатор ItemID иерархии помещается в контекст выбора при выборе в UIHierarchy окне. Это сценарий, используемый обозревателем макросов.

UIHWF_RouteCmdidDeleteФлаг используется в Init методе, чтобы сообщить окну иерархии, что содержащиеся в ней иерархии будут работать с собственными cmdidDelete командами, а не реализовывать IVsHierarchyDeleteHandler . В результате это окно иерархии обрабатывает удаление в среде с постоянным согласованным способом.

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