【发布时间】:2010-10-20 06:10:41
【问题描述】:
当使用 PropertyGrid 并传入一个对象以供用户进行更改时,处理取消/撤消的最佳方法是什么。
您是否将原始对象的副本提供到属性网格中进行更改,然后如果用户接受 mods 然后将值更新到原始对象中?
复制原始设置并传入活动对象,如果取消,则移回原始值?
还是其他方法?
【问题讨论】:
标签: .net propertygrid
当使用 PropertyGrid 并传入一个对象以供用户进行更改时,处理取消/撤消的最佳方法是什么。
您是否将原始对象的副本提供到属性网格中进行更改,然后如果用户接受 mods 然后将值更新到原始对象中?
复制原始设置并传入活动对象,如果取消,则移回原始值?
还是其他方法?
【问题讨论】:
标签: .net propertygrid
任何和所有都可以工作;对于简单的对象,我最常用的方法(在那种情况下)是序列化以创建深度克隆,而无需维护任何代码。如果您需要撤消,只需反序列化快照。但是,如果您要撤消的对象尚未位于模型中的 27 个属性和集合中,则此方法效果最佳;在那个场景中,你可能需要做更多的工作。
【讨论】: