我正在使用 Stacks 制作一个简单的 UndoRedo 框架,但由于某种原因,有些东西不起作用。我有这个代码来存储对象的属性,在这种情况下是 ColorBlend
public static ColorBlend _BG_Blend = new ColorBlend();
public ColorBlend BG_Blend
{
get { return _BG_Blend; }
set
{
AddLog("BG_Blend", _BG_Blend); //Name && Property Value
_BG_Blend = value;
}
}
现在,每次我更改混合时,都会将新属性存储在堆栈中,并发送一个可以撤消新操作的信号。如果让我们在日志中说 5 种不同的 ColorBlend,当我点击 Undo 时,它会返回存储的属性,但它们都具有相同的颜色,定位所有内容。有谁知道为什么?