DesignerActionService Класс

Определение

Устанавливает службу времени разработки, которая управляет коллекцией объектов DesignerActionItem для компонентов.Establishes a design-time service that manages the collection of DesignerActionItem objects for components.

public ref class DesignerActionService : IDisposable
public class DesignerActionService : IDisposable
type DesignerActionService = class
    interface IDisposable
Public Class DesignerActionService
Implements IDisposable
Наследование
DesignerActionService
Производный
Реализации

Комментарии

Класс DesignerActionService отвечает за управление коллекцией DesignerActionItem объектов для каждого экземпляра компонента, который существует в форме во время разработки.The DesignerActionService class is responsible for managing the collection of DesignerActionItem objects for each instance of a component that exists on a form at design time. Этот класс позволяет реализовать модель прямого push-уведомления для создания элементов и в основном предназначена для использования разработчиками инструментов времени разработки, хотя она также может использоваться разработчиками компонентов и пользовательских элементов управления.This class enables a direct push model of item creation, and is primarily intended for use by design-time tool developers, although it can also be used by component and custom control developers.

Разработчикам средств времени разработки необходимо определить список элементов, которые будут отображаться для компонента, и определить, когда этот список изменится.Design-time tool developers will need to determine the list of items to display for a component and determine when this list changes. Они также могут создавать надстройки, которые работают вместе с объектами панели смарт-тегов.They may also create add-ins that operate in conjunction with smart tag panel objects.

Разработчикам дополнительных компонентов может потребоваться динамически управлять элементами, связанными с компонентом, тем самым заменяя и дополняя стандартную модель извлечения.Advanced component developers may need to dynamically control the items associated with a component, thus replacing or supplementing the standard pull model. Например, команды панели можно изменить в зависимости от контекста их использования и состояния времени разработки компонента.For example, panel commands can be altered depending on the context of their use and the design-time state of the component.

Примечание

DesignerActionService на самом деле является назначением службы для моделей push и Pull; Однако в последнем случае он действует неявно.The DesignerActionService is actually the driving service behind both the push and pull models; however, in the latter case it operates implicitly.

DesignerActionService предоставляет простой интерфейс для доступа к элементам и управления ими для каждого компонента, включая следующие методы и события:DesignerActionService provides a straightforward interface for accessing and manipulating the items for each component, including the following methods and events:

  • Метод Contains определяет, управляет ли DesignerActionService определенным компонентом в настоящее время.The Contains method determines whether the DesignerActionService is currently managing a particular component.

  • Метод GetComponentActions поддерживает перечисление списков элементов.The GetComponentActions method supports the enumeration of the lists of items.

  • Метод Add позволяет добавлять DesignerActionList или DesignerActionListCollection к набору существующих элементов для экземпляра компонента.The Add method allows adding a DesignerActionList or DesignerActionListCollection to the set of existing items for a component instance. Напротив, метод Remove удаляет один или все списки элементов, связанные с компонентом.In contrast, the Remove method removes one or all of the item lists associated with a component.

    Примечание

    Метод Add представляет модель Direct Push для связывания элементов панели с компонентом.The Add method represents the direct push model of associating panel items with a component. В отличие от этого, модель извлечения полагается на переопределение свойства ActionLists класса конструктора для этого компонента.In contrast, the pull model relies on overriding the ActionLists property of the designer class for that component. Среда разработки отвечает за добавление этих элементов в текущую DesignerActionService при создании компонента в области конструктора.The design environment is responsible for adding these items into the current DesignerActionService when a component is created on the design surface.

    Важно!

    Методы Add, Remove, Containsи Clear только или влияют на элементы модели push-уведомлений.The Add, Remove, Contains, and Clear methods only consider or affect push-model items.

  • Событие DesignerActionListsChanged указывает, когда коллекция элементов изменяется для компонента.The DesignerActionListsChanged event indicates when the collection of items changes for a component.

Так как часто желательно использовать одни и те же элементы панели в контекстном меню во время разработки компонента и на его панели, существует большая степень взаимодействия между DesignerActionItemными объектами и командами конструктора.Because it is often desirable to use some of the same panel items in both the component's design-time shortcut menu and its panel, a large degree of interoperability exists between DesignerActionItem objects and designer verbs.

Если конструктор компонентов не указывает явно DesignerActionList (то есть не содержит переопределенное ActionLists свойства), то список будет создан из существующих команд конструктора.If a component designer does not explicitly specify a DesignerActionList (that is, it does not contain an overridden ActionLists property), then a list will be created from existing designer verbs. Эти команды указываются свойством Verbs.These verbs are specified by the Verbs property. В этом случае класс списка внутренних команд используется для хранения коллекции записей панели элементов команд.In this case, an internal verb list class is used to contain the collection of verb item panel entries.

Если вы хотите, чтобы DesignerActionMethodItem использовали как запись панели, так и запись контекстного меню времени разработки, можно задать параметр includeAsDesignerVerb в конструкторе элемента.If you want a DesignerActionMethodItem to be used both as a panel entry and a design-time shortcut menu entry, then you can set the includeAsDesignerVerb parameter in the item's constructor.

Используйте DesignerActionUIService для управления отображением ActionListsконструктора.Use the DesignerActionUIService to control the display of your designer's ActionLists.

Конструкторы

DesignerActionService(IServiceProvider)

Инициализирует новый экземпляр класса DesignerActionService.Initializes a new instance of the DesignerActionService class.

Методы

Add(IComponent, DesignerActionList)

Добавляет список DesignerActionList в текущую коллекцию управляемых смарт-тегов.Adds a DesignerActionList to the current collection of managed smart tags.

Add(IComponent, DesignerActionListCollection)

Добавляет список DesignerActionListCollection в текущую коллекцию управляемых смарт-тегов.Adds a DesignerActionListCollection to the current collection of managed smart tags.

Clear()

Освобождает все компоненты от управления и очищает все списки смарт-тегов модели внедрения.Releases all components from management and clears all push-model smart tag lists.

Contains(IComponent)

Определяет, управляет ли текущая служба смарт-тегов списками действий для указанного компонента.Determines whether the current smart tag service manages the action lists for the specified component.

Dispose()

Освобождает все ресурсы, используемые классом DesignerActionService.Releases all resources used by the DesignerActionService class.

Dispose(Boolean)

Освобождает неуправляемые ресурсы, используемые объектом DesignerActionService, а при необходимости освобождает также управляемые ресурсы.Releases the unmanaged resources used by the DesignerActionService and optionally releases the managed resources.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.Determines whether the specified object is equal to the current object.

(Унаследовано от Object)
GetComponentActions(IComponent)

Возвращает коллекцию списков элементов смарт-тегов, сопоставленных компоненту.Returns the collection of smart tag item lists associated with a component.

GetComponentActions(IComponent, ComponentActionsType)

Возвращает коллекцию списков элементов смарт-тегов заданного типа, сопоставленных компоненту.Returns the collection of smart tag item lists of the specified type associated with a component.

GetComponentActions(IComponent, ComponentActionsType)
GetComponentDesignerActions(IComponent, DesignerActionListCollection)

Извлекает смарт-теги модели извлечения, сопоставленные компоненту.Retrieves the pull-model smart tags associated with a component.

GetComponentServiceActions(IComponent, DesignerActionListCollection)

Извлекает смарт-теги модели внедрения, сопоставленные компоненту.Retrieves the push-model smart tags associated with a component.

GetHashCode()

Служит в качестве хэш-функции по умолчанию.Serves as the default hash function.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.Gets the Type of the current instance.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.Creates a shallow copy of the current Object.

(Унаследовано от Object)
Remove(DesignerActionList)

Удаляет заданный список смарт-тегов из всех компонентов, управляемых текущей службой.Removes the specified smart tag list from all components managed by the current service.

Remove(IComponent)

Удаляет все списки смарт-тегов, сопоставленных заданному компоненту.Removes all the smart tag lists associated with the specified component.

Remove(IComponent, DesignerActionList)

Удаляет заданный смарт-тег из указанного компонента.Removes the specified smart tag list from the specified component.

ToString()

Возвращает строку, представляющую текущий объект.Returns a string that represents the current object.

(Унаследовано от Object)

События

DesignerActionListsChanged

Происходит при удалении списка DesignerActionList или его добавлении для любого компонента.Occurs when a DesignerActionList is removed or added for any component.

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

Дополнительно