UndoEngine 클래스
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
디자인 타임에 제네릭 실행 취소/다시 실행 기능을 지정합니다.
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 사용할 수 있어야 하는 서비스를 보여 줍니다.
| 서비스 | Description |
|---|---|
| ComponentSerializationService | 변경 전과 후에 구성 요소의 속성 및 개체 값을 저장합니다. |
| IComponentChangeService | 구성 요소에 대한 변경 내용을 실행 취소 엔진에 알깁니다. |
| IDesignerHost | 트랜잭션을 추적하는 데 사용됩니다. |
메모
클래스에는 UndoEngine 필요 ComponentSerializationService 하므로 IComponentChangeService디자인 타임에만 사용할 수 있습니다.
실행 취소 엔진은 트랜잭션을 추적하고 트랜잭션을 포함하는 단일 실행 취소 단위를 만듭니다. 따라서 실행 취소 엔진은 실행 취소할 수 있는 작업의 기간을 제어합니다. 또한 트랜잭션의 이름을 지정할 수 있으므로 실행 취소할 수 있는 작업은 현재 트랜잭션에서 해당 이름을 상속합니다. 사용할 수 있는 트랜잭션이 없고 변경 내용이 보고되면 실행 취소 엔진은 변경 유형(예: "Change 속성 'Text'")에 따라 실행 취소 이름을 만듭니다.
생성자
| Name | Description |
|---|---|
| UndoEngine(IServiceProvider) |
UndoEngine 클래스의 새 인스턴스를 초기화합니다. |
속성
| Name | Description |
|---|---|
| Enabled |
를 사용하거나 사용하지 않도록 설정합니다 UndoEngine. |
| UndoInProgress |
실행 취소 작업이 진행 중인지를 나타냅니다. |
메서드
| Name | Description |
|---|---|
| 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) |
이벤트
| Name | Description |
|---|---|
| Undoing |
실행 취소 작업이 수행되기 직전에 발생합니다. |
| Undone |
실행 취소 작업이 수행된 직후에 발생합니다. |