CommandSet - класс
Представляет поднабор команд, доступных в меню в доменном языке. Переопределите методы в YourLanguageCommandSet, чтобы изменить то, как эти команды обрабатываются.
Этот интерфейс API CLS-несовместим.
Иерархия наследования
System.Object
System.MarshalByRefObject
Microsoft.VisualStudio.Modeling.Shell.CommandSetLibrary
Microsoft.VisualStudio.Modeling.Shell.CommandSet
Пространство имен: Microsoft.VisualStudio.Modeling.Shell
Сборка: Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0 (в Microsoft.VisualStudio.Modeling.Sdk.Shell.12.0.dll)
Синтаксис
'Декларация
<CLSCompliantAttribute(False)> _
Public MustInherit Class CommandSet _
Inherits CommandSetLibrary
[CLSCompliantAttribute(false)]
public abstract class CommandSet : CommandSetLibrary
Тип CommandSet предоставляет следующие члены.
Конструкторы
Имя | Описание | |
---|---|---|
![]() |
CommandSet | Инициализирует новый экземпляр класса CommandSet. |
В начало страницы
Свойства
Имя | Описание | |
---|---|---|
![]() |
CurrentDocData | (Унаследовано от CommandSetLibrary.) |
![]() |
CurrentDocumentSelection | (Унаследовано от CommandSetLibrary.) |
![]() |
CurrentDocView | Получает представление для активного окна документа. |
![]() |
CurrentModelingDocView | (Унаследовано от CommandSetLibrary.) |
![]() |
CurrentSelection | (Унаследовано от CommandSetLibrary.) |
![]() |
MenuService | (Унаследовано от CommandSetLibrary.) |
![]() |
MonitorSelection | (Унаследовано от CommandSetLibrary.) |
![]() |
ServiceProvider | (Унаследовано от CommandSetLibrary.) |
![]() |
SingleDocumentSelection | (Унаследовано от CommandSetLibrary.) |
![]() |
SingleSelection | (Унаследовано от CommandSetLibrary.) |
В начало страницы
Методы
Имя | Описание | |
---|---|---|
![]() |
CanDeleteSelectedItems | Возвращает значение true, если выделенные элементы могут быть удалены. (Унаследовано от CommandSetLibrary.) |
![]() |
CreateObjRef | Критический с точки зрения безопасности. Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject.) |
![]() |
DeleteSelectedItems | Удаление выбранных элементов. (Унаследовано от CommandSetLibrary.) |
![]() |
Equals | Определяет, равен ли заданный объект текущему объекту. (Унаследовано от Object.) |
![]() |
Finalize | Позволяет объекту попытаться освободить ресурсы и выполнить другие операции очистки, перед тем как объект будет утилизирован в процессе сборки мусора. (Унаследовано от Object.) |
![]() |
GetHashCode | Служит хэш-функцией по умолчанию. (Унаследовано от Object.) |
![]() |
GetLifetimeService | Критический с точки зрения безопасности. Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject.) |
![]() |
GetMenuCommands | Отображает команды в контекстном меню. (Переопределяет CommandSetLibrary.GetMenuCommands().) |
![]() |
GetType | Возвращает объект Type для текущего экземпляра. (Унаследовано от Object.) |
![]() |
Initialize | Инициализирует набор команд.Вызывает GetMenuCommands и кэширует результатов. (Унаследовано от CommandSetLibrary.) |
![]() |
InitializeLifetimeService | Критический с точки зрения безопасности. Возвращает объект обслуживания во время существования для управления политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject.) |
![]() |
IsAnyDocumentSelectionCompartment | Значение true, если какой-либо из элементов в списке выбора является секцией. (Унаследовано от CommandSetLibrary.) |
![]() |
IsAnyDocumentSelectionMoveableHostShape | Значение true, если какой-либо из элементов в списке выбора является перемещаемой основной фигурой, которая не может быть удалена. (Унаследовано от CommandSetLibrary.) |
![]() |
IsAnyDocumentSelectionUndeletable | Значение true, если в списке выбора если элементы фигур, которые не могут быть удалены. (Унаследовано от CommandSetLibrary.) |
![]() |
IsCurrentDiagramEmpty | Значение true, если схема не имеет дочерних элементов. (Унаследовано от CommandSetLibrary.) |
![]() |
IsDiagramSelected | Значение true, если схема выбрана. (Унаследовано от CommandSetLibrary.) |
![]() |
IsExpandableShape | Проверяет, может ли пользователь развернуть фигуру, чтобы отобразить свойства домена. |
![]() |
IsSingleDocumentSelection | Значение true, если имеется только один выбранный элемент в активном документе. (Унаследовано от CommandSetLibrary.) |
![]() |
IsSingleSelection | Значение true, если имеется только один выбранный элемент в активном окне документа или окне инструментов. (Унаследовано от CommandSetLibrary.) |
![]() |
MemberwiseClone() | Создает неполную копию текущего объекта Object. (Унаследовано от Object.) |
![]() |
MemberwiseClone(Boolean) | Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject.) |
![]() |
ProcessOnMenuDeleteCommand | Вызывается, когда пользователь выбирает команду Удалить или нажимает клавишу Delete.Удаляет элемент.Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuEditCompartmentItemCommand | Вызывается, когда пользователь выбирает команду меню Изменить для элемента в фигуре секции.Вставляет состояние редактирования текста.Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuExpandCollapseCommand | Вызывается, когда пользователь разворачивает или сворачивает список свойств, присвоенных фигуре. |
![]() |
ProcessOnMenuPageSetupCommand | Открывает диалоговое окно "Параметры страницы".Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuPrintCommand | Открывает диалоговое окно "Печать".Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuPrintPreviewCommand | Открывает окно предварительного просмотра печати.Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuRerouteLineCommand | Восстанавливает позицию по умолчанию соединителя между двумя фигурами.Для изменения этого поведения переопределите данный метод. |
![]() |
ProcessOnMenuResetDecoratorLocationCommand | Переопределите этот метод для обработки команды меню сброса расположения декоратора. |
![]() |
ProcessOnMenuResetDecoratorSizeCommand | Переопределите этот метод для обработки команды меню сброса размера декоратора. |
![]() |
ProcessOnMenuSelectAllCommand | Вызывается, когда пользователь выбирает команду Выбрать все в меню Правка или нажмите клавишу ctrl-А.Выбирает все фигуры на схеме.Для изменения этого поведения переопределите метод. |
![]() |
ProcessOnStatusDeleteCommand | Определяет, отображается ли команда Удалить в контекстное меню.Вызывается, если щелкнуть в области схемы правой кнопкой мыши. |
![]() |
ProcessOnStatusEditCompartmentItemCommand | Определяет, отображается ли команда Изменить в контекстное меню. |
![]() |
ProcessOnStatusExpandCollapseCommand | Определяет, отображается ли команда Развернуть или Свернуть в контекстное меню.Вызывается, если щелкнуть в области схемы правой кнопкой мыши. |
![]() |
ProcessOnStatusPageSetupCommand | Определяет, отображается ли команда Параметры страницы в меню Файл.Вызывается, когда пользователь нажимает меню Файл, пока схема активна. |
![]() |
ProcessOnStatusPrintCommand | Определяет, отображается ли команда Печать в меню Файл.Вызывается, когда пользователь нажимает меню Файл, пока схема активна. |
![]() |
ProcessOnStatusPrintPreviewCommand | Определяет, отображается ли команда Предварительный просмотр в меню.Вызывается, когда пользователь нажимает меню Файл, пока схема активна. |
![]() |
ProcessOnStatusRerouteLineCommand | Определяет, отображается ли команда Спрямление в контекстное меню.Вызывается, если щелкнуть в области схемы правой кнопкой мыши. |
![]() |
ProcessOnStatusResetDecoratorLocationCommand | Определяет, отображается ли команда Rest Decorator Location в контекстное меню.Вызывается, если щелкнуть в области схемы правой кнопкой мыши. |
![]() |
ProcessOnStatusResetDecoratorSizeCommand | Определяет, отображается ли команда Reset Decorator Size в контекстное меню.Вызывается, если щелкнуть в области схемы правой кнопкой мыши. |
![]() |
ProcessOnStatusSelectAllCommand | Определяет, отображается ли команда Выбрать все в меню.Вызывается, когда пользователь нажимает меню Правка, пока схема активна. |
![]() |
ToString | Возвращает строку, представляющую текущий объект. (Унаследовано от Object.) |
В начало страницы
Заметки
Можно изменить способ доменный язык реагирует на некоторые команды меню. Команды можно изменять включают команды в контекстном меню, и некоторые команды в файле и меню " Правка ".
В проекте DslPackage содержатся в созданный файл CommandSet.cs, содержащие частично объявление вызванного класса < >commandset YourLanguageName. Чтобы изменить расширение функциональности стандартных команд меню, добавьте другой файл с частично определением того же класса.
В этом классе можно переопределить методы, определенные в базовом классе.
Примечание
Убедитесь, что пространство имен в новом файле такое же, как пространство имен в созданном CommandSet.cs.В новом файле, при вводе «переопределение» в объявление класса необходимо вывести список методов, которые можно переопределить.
Каждая команда имеет метод ProcessOnStatus… и метод ProcessOnMenu…. Метод ProcessOnStatus… указывает, отображается ли команда в правой кнопкой меню. Задайте видимое свойство параметров команды, чтобы определить, является ли команда видима и задать допустимое свойство, чтобы определить, включен пункт меню или greyed работу.
Метод ProcessOnMenu… выполняет команду, когда пользователь щелкает пункт меню.
Примечание
Можно определить дополнительные команды в файле Commands.vsct.
Для получения дополнительной информации см. Практическое руководство. Добавление команды в контекстное меню.
Примеры
Этот файл добавляется в проект DslPackage. Он запрещает пользователям доменного языка удалять несколько элементов одновременно.
// In the DslPackage project.
namespace Company.Language1 // Check this is correct after creating the file.
{
internal partial class Language1CommandSet // Same class as the generated class.
{
/// <summary>
/// Called when user right-clicks on the diagram or clicks the Edit menu.
/// </summary>
/// <param name="command"></param>
protected override void ProcessOnStatusDeleteCommand(System.ComponentModel.Design.MenuCommand command)
{
if (this.CurrentSelection.Count > 1)
{
// If user has selected more than one item, Delete is greyed out.
command.Enabled = false;
}
else
{
// Otherwise, default behavior.
base.ProcessOnStatusDeleteCommand(command);
}
}
/// <summary>
/// Called when user presses Delete key or clicks the Delete command on a menu.
/// </summary>
protected override void ProcessOnMenuDeleteCommand()
{
// Allow users to delete only one thing at a time.
if (this.CurrentSelection.Count <= 1)
{
base.ProcessOnMenuDeleteCommand();
}
}
}
}
Потокобезопасность
Любые открытые члены этого типа, объявленные как static (Shared в Visual Basic), являются потокобезопасными. Потокобезопасность членов экземпляров не гарантируется.
См. также
Ссылки
Microsoft.VisualStudio.Modeling.Shell - пространство имен
Другие ресурсы
Практическое руководство. Добавление команды в контекстное меню