Поделиться через


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.11.0 (в Microsoft.VisualStudio.Modeling.Sdk.Shell.11.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 Извлекает по умолчанию позиция соединителя между фигурами 2.Переопределите этот метод, чтобы изменить эти расширения функциональности.
Защищенный метод ProcessOnMenuResetDecoratorLocationCommand Переопределите этот метод для обработки команды меню расположения оформителя возврата.
Защищенный метод ProcessOnMenuResetDecoratorSizeCommand Переопределите этот метод для обработки команды меню размера оформителя возврата.
Защищенный метод ProcessOnMenuSelectAllCommand Вызывается, когда пользователь выбирает соответствующую команду Выделить все в меню Правка или нажмите клавишу ctrl-.Выбирает все фигуры на схеме.Переопределите этот метод, чтобы изменить эти расширения функциональности.
Защищенный метод ProcessOnStatusDeleteCommand Указывает, отображается ли команда удалить в контекстном меню.Вызывается, когда пользователь щелкнул правой кнопкой мыши над схемой.
Защищенный метод ProcessOnStatusEditCompartmentItemCommand Указывает, отображается ли команда для редактирования в контекстном меню.
Защищенный метод ProcessOnStatusExpandCollapseCommand Указывает, отображается ли команда развернуть или свернуть в контекстном меню.Вызывается, когда пользователь щелкнул правой кнопкой мыши над схемой.
Защищенный метод ProcessOnStatusPageSetupCommand Указывает, отображается ли команду параметры страницы в меню " Файл ".Вызывается, когда пользователь нажимает меню Файл, а схема активна.
Защищенный метод ProcessOnStatusPrintCommand Указывает, отображается ли команда печать в меню Файл.Вызывается, когда пользователь нажимает меню Файл, а схема активна.
Защищенный метод ProcessOnStatusPrintPreviewCommand Указывает, отображается ли команду просмотра меню.Вызывается, когда пользователь нажимает меню Файл, а схема активна.
Защищенный метод ProcessOnStatusRerouteLineCommand Определяет, будет ли команда Reroute в контекстном меню.Вызывается, когда пользователь щелкнул правой кнопкой мыши над схемой.
Защищенный метод ProcessOnStatusResetDecoratorLocationCommand Указывает, отображается ли команда расположения оформителя оставшихся в контекстном меню.Вызывается, когда пользователь щелкнул правой кнопкой мыши над схемой.
Защищенный метод ProcessOnStatusResetDecoratorSizeCommand Указывает, отображается ли команда размера оформителя возврата в меню.Вызывается, когда пользователь щелкнул правой кнопкой мыши над схемой.
Защищенный метод ProcessOnStatusSelectAllCommand Указывает, отображается ли команда выбрать все в меню.Вызывается, когда пользователь нажимает меню Правка, пока схема активна.
Открытый метод ToString Возвращает строку, представляющую текущий объект. (Унаследовано от Object.)

В начало страницы

Заметки

Можно изменять как DSL реагирует на некоторые команды меню.Команды включают команды можно изменить в контекстном меню, а некоторые команды в файле и в меню " Правка ".

В проекте, можно найти DslPackage созданный файл с именем CommandSet.cs, содержащий объявление класса < частичноYourLanguageName>CommandSet.Чтобы изменить расширение функциональности стандартных команд меню, добавьте еще один файл с частично определением того же класса.

В этом классе можно переопределить методы, определенные в базовом классе.

ПримечаниеПримечание

Убедитесь, что пространство имен в новом файле совпадает с пространством имен в создаваемый CommandSet.cs.В новом файле, при вводе "переопределение" внутри объявления класса, необходимо просмотреть список методов, которые можно переопределить.

Каждая команда имеет ProcessOnStatus…метод и ProcessOnMenu…Метод .ProcessOnStatus…метод определяет, будет ли команда в меню щелкните правой кнопкой мыши элемент.Установите свойство visible параметров команды, чтобы определить, является ли команда отображается, и задать свойство enabled, чтобы определить, что пункт меню включен или отображаются серым.

ProcessOnMenu…метод выполняет команду, когда пользователь щелкает пункт меню.

ПримечаниеПримечание

Можно указать дополнительные команды в файле Commands.vsct.

Дополнительные сведения см. в разделе Практическое руководство. Добавление команды в контекстное меню.

Примеры

Этот файл добавляется к проекту DslPackage.Он запрещает пользователям DSL из удаление более одного элемента за один раз.

// 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 - пространство имен

Другие ресурсы

Практическое руководство. Добавление команды в контекстное меню