GraphUndoUnit 类

定义

重要

此 API 不符合 CLS。

此类表示在 VS undo 堆栈上显示的一个可撤消的图形更改。

public ref class GraphUndoUnit : Microsoft::VisualStudio::Diagnostics::PerformanceProvider::DebugTrace::ITraceableInstance, Microsoft::VisualStudio::GraphModel::IGraphUndoData, Microsoft::VisualStudio::GraphModel::IMergeableUndo, Microsoft::VisualStudio::OLE::Interop::IOleUndoUnit
[System.CLSCompliant(false)]
public class GraphUndoUnit : Microsoft.VisualStudio.Diagnostics.PerformanceProvider.DebugTrace.ITraceableInstance, Microsoft.VisualStudio.GraphModel.IGraphUndoData, Microsoft.VisualStudio.GraphModel.IMergeableUndo, Microsoft.VisualStudio.OLE.Interop.IOleUndoUnit
[<System.CLSCompliant(false)>]
type GraphUndoUnit = class
    interface IMergeableUndo
    interface IOleUndoUnit
    interface IGraphUndoData
    interface ITraceableInstance
Public Class GraphUndoUnit
Implements IGraphUndoData, IMergeableUndo, IOleUndoUnit, ITraceableInstance
继承
GraphUndoUnit
属性
实现
Microsoft.VisualStudio.Diagnostics.PerformanceProvider.DebugTrace.ITraceableInstance IGraphUndoData IMergeableUndo IOleUndoUnit

构造函数

GraphUndoUnit(Graph, GraphUpdatedEventArgs)

从将要在给定 GraphUpdatedEventArgs 中提交的更改构造撤消单元。 这必须在图形更新过程中调用,因为更新后的事件太迟,因为在提交更改之前,必须能够保存旧值才能撤消这些更改。

属性

Causality

此撤消单元的关联因果关系。

Description

此撤消单元的说明。

Disabled

是否应禁用此撤消单元 (由构造函数) 中找到的信息确定。

Enlistment

此撤消单元的关联 GraphTransactionEnlistment。

IsEmpty

此撤消单元是否为空。

IsRedoUnit

这是否是重做单元。

IsUndoUnit

这是否是一个撤消单元。

ScopeProperties

与此撤消单元关联的属性包。

方法

AddLink(GraphLink)

如果需要将链接添加回图形,则在应用过程中调用。 您可以重写此,但必须调用 base。AddLInk.

AddNode(GraphNode)

如果需要将节点添加回图形,则在应用过程中调用。 您可以重写此,但必须调用 base。AddNode.

Apply()

应用撤消单元。

Apply(Action)

执行此撤消或重做操作。

ApplyToGraph(Graph)

将撤消单元应用于其他关系图。

ApplyToNode(GraphNode, GraphNode)

将原始节点上的任何属性或类别更改应用于输入节点。

Do(IOleUndoManager)

根据此撤消单元的内部状态执行撤消/重做,撤消单元负责将自身添加到 相反 的堆栈

DoApply(IOleUndoManager)
DoGetCalculateDescription()
GetDescription(String)

获取此撤消单元的文本说明,该说明由 shell 显示。

GetUnitType(Guid, Int32)

获取撤消 Unittype.pixel 度量。

IsRedo(Dictionary<Object,Object>)

确定指定的 GraphTransactionScope 当前是否用于重做操作。

IsUndo(Dictionary<Object,Object>)

确定指定的 GraphTransactionScope 当前是否正在用于撤消操作。

IsUndoable(GraphObject, GraphProperty)

如果给定 graphObject 上给定属性的更改不可恢复,则返回 true。 如果属性元数据已设置了 IsUndoable 标志,则此方法返回 true; 如果没有 IsSharable 或 IsSerializable 标志,则返回 false。 另外,如果它有 IsWriteOnce,则它也会返回 false,因为不允许 UndoStack 更改值。 如果返回 false,则不会在撤消/重做之间保留该属性。
对于返回 false 的暂时性属性,可在撤消堆栈中节省大量内存。

Merge(IMergeableUndo)

将撤消单元合并为此项

OnNextAdd()

当将新的撤消单元添加到撤消堆栈上的此项顶部时调用。

RemoveLink(GraphLink)

如果需要将链接添加回图形,则在应用过程中调用。 您可以重写此,但必须调用 base。RemoveLink.

RemoveNode(GraphNode)

如果需要将节点从移到图形,则在应用过程中调用。 您可以重写此,但必须调用 base。RemoveNode.

显式接口实现

IGraphUndoData.AddedCategories
IGraphUndoData.AddedConditions
IGraphUndoData.AddedLinks
IGraphUndoData.AddedNodes
IGraphUndoData.AddedProperties
IGraphUndoData.AddedSetters
IGraphUndoData.AddedStyles
IGraphUndoData.RemovedCategories
IGraphUndoData.RemovedConditions
IGraphUndoData.RemovedLinks
IGraphUndoData.RemovedNodes
IGraphUndoData.RemovedProperties
IGraphUndoData.RemovedSetters
IGraphUndoData.RemovedStyles
ITraceableInstance.InstanceTrace

适用于