UndoEngine Klas
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee geeft u algemene functionaliteit ongedaan maken/opnieuw uitvoeren op het ontwerptijd.
public ref class UndoEngine abstract : IDisposable
public abstract class UndoEngine : IDisposable
type UndoEngine = class
interface IDisposable
Public MustInherit Class UndoEngine
Implements IDisposable
- Overname
-
UndoEngine
- Implementeringen
Opmerkingen
De UndoEngine abstracte klasse biedt een standaard implementatie van functionaliteit ongedaan maken tijdens het ontwerp. Een eenheid voor ongedaan maken vertegenwoordigt één eenheid van onverwerkbaar werk. Deze eenheid wordt toegevoegd aan een stack en de gebruiker kan vervolgens de stack doorlopen om elke actie ongedaan te maken. Eenheden ongedaan maken zijn meestal ontworpen om te schakelen, wat betekent dat het aanroepen van ongedaan maken tweemaal de toepassing naar de beginstatus retourneert.
De UndoEngine klasse profiteert van de volgende kenmerken van objecten die worden uitgevoerd in de ontwerpfunctie:
Alle interessante objecten kunnen worden bewaard in een bepaalde indeling door het ontwerpprogramma.
Alle objecten genereren meldingen over het wijzigen van eigenschappen wanneer een eigenschap wordt gewijzigd.
IDesignerHost biedt het idee van transacties, die kunnen worden gebruikt om een ongedaan maken actie te fabriceren die meerdere kleinere acties omvat.
Met deze functies UndoEngine kunt u alle benodigde eenheden ongedaan maken.
Note
Wijzig eigenschapswaarden niet rechtstreeks. Voor de UndoEngine klasse moet u de juiste TypeDescriptor eigenschapswaarden gebruiken.
UndoEngine controleert op wijzigingsmeldingen voor het maken van ongedaan maken van eenheden en de eenheden zelf bestaan uit geserialiseerde objectstatussen. In de volgende tabel ziet u de services die beschikbaar moeten zijn wanneer UndoEngine ze worden gemaakt.
| Dienst | Beschrijving |
|---|---|
| ComponentSerializationService | Hiermee worden eigenschaps- en objectwaarden voor een onderdeel voor en na een wijziging opgeslagen. |
| IComponentChangeService | Hiermee wordt de engine voor ongedaan maken van wijzigingen in onderdelen op de hoogte gebracht. |
| IDesignerHost | Wordt gebruikt om transacties bij te houden. |
Note
Omdat de klasse vereist is ComponentSerializationService enIComponentChangeService, is deze UndoEngine alleen beschikbaar tijdens het ontwerp.
De engine voor ongedaan maken houdt transacties bij en maakt één eenheid voor ongedaan maken die een transactie omvat. Hierdoor heeft de engine voor ongedaan maken controle over de duur van een onverdobare actie. Omdat transacties een naam kunnen krijgen, nemen onverdobare acties hun namen over van de huidige transactie. Als er geen transactie beschikbaar is en er een wijziging wordt gerapporteerd, maakt de engine voor ongedaan maken een naam voor ongedaan maken op basis van het type wijziging (bijvoorbeeld 'Eigenschap Tekst wijzigen').
Constructors
| Name | Description |
|---|---|
| UndoEngine(IServiceProvider) |
Initialiseert een nieuw exemplaar van de UndoEngine klasse. |
Eigenschappen
| Name | Description |
|---|---|
| Enabled |
Hiermee schakelt u de UndoEngine. |
| UndoInProgress |
Geeft aan of er een actie ongedaan maken wordt uitgevoerd. |
Methoden
| Name | Description |
|---|---|
| AddUndoUnit(UndoEngine+UndoUnit) |
Voegt een UndoEngine.UndoUnit aan de stapel ongedaan maken toe. |
| CreateUndoUnit(String, Boolean) |
Hiermee maakt u een nieuwe UndoEngine.UndoUnit. |
| DiscardUndoUnit(UndoEngine+UndoUnit) |
Verwijdert een UndoEngine.UndoUnit. |
| Dispose() |
Alle resources die worden gebruikt door de UndoEngine. |
| Dispose(Boolean) |
Publiceert de niet-beheerde resources die worden gebruikt door de UndoEngine beheerde resources en brengt eventueel de beheerde resources vrij. |
| Equals(Object) |
Bepaalt of het opgegeven object gelijk is aan het huidige object. (Overgenomen van Object) |
| GetHashCode() |
Fungeert als de standaardhashfunctie. (Overgenomen van Object) |
| GetRequiredService(Type) |
Hiermee haalt u de aangevraagde service op. |
| GetService(Type) |
Hiermee haalt u de aangevraagde service op. |
| GetType() |
Hiermee haalt u de Type huidige instantie op. (Overgenomen van Object) |
| MemberwiseClone() |
Hiermee maakt u een ondiepe kopie van de huidige Object. (Overgenomen van Object) |
| OnUndoing(EventArgs) |
Hiermee wordt de Undoing gebeurtenis gegenereerd. |
| OnUndone(EventArgs) |
Hiermee wordt de Undone gebeurtenis gegenereerd. |
| ToString() |
Retourneert een tekenreeks die het huidige object vertegenwoordigt. (Overgenomen van Object) |
gebeurtenis
| Name | Description |
|---|---|
| Undoing |
Vindt direct plaats voordat een bewerking ongedaan wordt gemaakt. |
| Undone |
Vindt direct plaats nadat een bewerking ongedaan is gemaakt. |