public override void SetValue(object component, object value) { if (component is RenderBase) { RenderBase render = component as RenderBase; RenderScene scene = render.getRenderScene(); render.recordOriStatus(); mProp.SetValue(component, value); if (scene == null) { return; } if (mProp.Name == "pos") { scene.commandManager.AddCommand(new CommandMove(scene, render)); } else if (mProp.Name == "size") { scene.commandManager.AddCommand(new CommandResize(scene, render)); } else if (mProp.Name == "anchorPos") { scene.commandManager.AddCommand(new CommandAnchorPos(scene, render)); } else if (mProp.Name == "scale") { scene.commandManager.AddCommand(new CommandScale(scene, render)); } else if (mProp.Name == "Tag") { EventManager.RaiserEvent(Constant.RenderItemChange, scene, null); } scene.checkModifyStatus(); } else { mProp.SetValue(component, value); } }