UndoEngine Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Определяет универсальную функциональность отмены и повтора действия во время разработки.
public ref class UndoEngine abstract : IDisposable
public abstract class UndoEngine : IDisposable
type UndoEngine = class
interface IDisposable
Public MustInherit Class UndoEngine
Implements IDisposable
- Наследование
-
UndoEngine
- Реализации
Комментарии
Абстрактный UndoEngine класс предоставляет реализацию функции отмены по умолчанию во время разработки. Блок отмены представляет собой одну единицу работы, которую можно отменить. Этот урок добавляется в стек, и затем пользователь может пройти по стеку, чтобы отменить каждое действие. Блоки отмены обычно предназначены для переключения. Это означает, что при двойном вызове отмены приложение возвращается в начальное состояние.
Класс UndoEngine использует следующие характеристики объектов, выполняющихся в конструкторе:
Все интересные объекты могут быть сохранены в определенном формате загрузчиком конструктора.
Все объекты вызывают уведомления об изменении свойства при изменении свойства.
IDesignerHost предлагает представление о транзакциях, которые можно использовать для создания действия отмены, охватывающего несколько небольших действий.
С помощью этих функций UndoEngine можно автоматически создать любые необходимые единицы отмены.
Примечание
Не изменяйте значения свойств напрямую. Класс UndoEngine требует использовать соответствующий TypeDescriptor для изменения значений свойств.
UndoEngine отслеживает уведомления об изменениях для создания единиц отмены, а сами единицы состоят из сериализованных состояний объектов. В следующей таблице показаны службы, которые должны быть доступны при UndoEngine создании.
Служба | Описание |
---|---|
ComponentSerializationService | Сохраняет значения свойств и объектов для компонента до и после внесения изменений. |
IComponentChangeService | Уведомляет подсистему отмены об изменениях, внесенных в компоненты. |
IDesignerHost | Используется для отслеживания транзакций. |
Примечание
UndoEngine Так как класс требует ComponentSerializationService и IComponentChangeService, он доступен только во время разработки.
Подсистема отмены отслеживает транзакции и создает одну единицу отмены, которая охватывает транзакцию. В результате подсистема отмены управляет длительностью действия, которое можно отменить. Кроме того, так как транзакции могут быть именованы, действия с отменой наследуют их имена от текущей транзакции. Если транзакция недоступна и сообщается об изменении, подсистема отмены создает имя отмены на основе типа изменения (например, "Изменение свойства "Текст").
Конструкторы
UndoEngine(IServiceProvider) |
Инициализирует новый экземпляр класса UndoEngine. |
Свойства
Enabled |
Включает или отключает объект UndoEngine. |
UndoInProgress |
Определяет, выполняется ли действие отмены. |
Методы
AddUndoUnit(UndoEngine+UndoUnit) |
Добавляет объект UndoEngine.UndoUnit в стек отмены. |
CreateUndoUnit(String, Boolean) |
Создает новый экземпляр UndoEngine.UndoUnit. |
DiscardUndoUnit(UndoEngine+UndoUnit) |
Обнуляет объект UndoEngine.UndoUnit. |
Dispose() |
Освобождает все ресурсы, занятые модулем UndoEngine. |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом UndoEngine, а при необходимости освобождает также управляемые ресурсы. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetRequiredService(Type) |
Возвращает запрашиваемую службу. |
GetService(Type) |
Возвращает запрашиваемую службу. |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnUndoing(EventArgs) |
Вызывает событие Undoing. |
OnUndone(EventArgs) |
Вызывает событие Undone. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
События
Undoing |
Возникает непосредственно перед выполнением действия отмены. |
Undone |
Возникает непосредственно после выполнения действия отмены. |