应用中Undo/Redo是比较常用的功能,如果每个应用做一个比较麻烦,可以参考如下的框架:

大名鼎鼎的 infragistics 提供的框架:

http://blogs.infragistics.com/blogs/ambrose_little/archive/2012/01/26/infragistics-undo-redo-framework-ctp.aspx

http://www.infoq.com/news/2012/01/undo-redo-silverlight-wpf

codeplex一个比较早的框架

http://undo.codeplex.com/

http://blogs.msdn.com/b/kirillosenkov/archive/2009/07/02/samples-for-the-undo-framework.aspx

WPF/Silverlight Undo/Redo框架相关推荐

  1. Undo/Redo框架实现

    http://www.cnblogs.com/wanghui9072229/archive/2011/08/29/2158960.html

  2. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十五)完美捕捉精灵之神器 -- HitTest...

    怪物们都出现了,如何选中自己心仪的怪是主角目前首要做的事. 为了进行鼠标状态区别,我首先对鼠标变化规则进行约束:当鼠标在屏幕上空旷地图区域移动时,鼠标光标形态表现为默认光标 (0号光标图片),当鼠标经 ...

  3. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(一)让物体动起来①

    序:自从QXGame(WPF GAME ENGINE)游戏引擎公布以来,受到很多朋友的热切关注,于是乎有了写教程的想法.那么从今天开始,我将带领大家一步一步的学会如何使用纯C#开发WPF/Silver ...

  4. WPF/Silverlight中MVVM运用

    随着WPF/Silverlight等技术的出现,一种新的模式出现在大家面前,那就是MVVM,提到这个模式,大家也许感觉很迷惑,也许会不屑于故,也许你会说我现在做项目都形成了自己的框架了,为什么还要花费 ...

  5. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(二十四) Be careful!前方怪物出没...

    游戏的精灵框架到此为止算告一段落,让我们一同来体验它带来的神奇效应. 一个安静的黄昏,主角悠闲的甩着它帅气的毛发独跑于林阴大道.怎知天色已晚即将进入月亮的领地,嘿嘿,我们的故事就从这里开始:Be ca ...

  6. WPF/Silverlight深度解决方案:(二)Silverlight源码之自我保护

    Silverlight应用程序发布时会将所有本地资源及类库dll打包进xap文件中,好处是可以非常方便的在网页中部署及桌面化使用:但是同时带来了高度的源码泄露风险.众所周知,xap文件可以被zip等解 ...

  7. WPF/Silverlight深度解决方案:(二)Silverlight源码之自我保护(加密)

    Silverlight应用程序发布时会将所有本地资源及类库dll打包进xap文件中,好处是可以非常方便的在网页中部署及桌面化使用:但是同时带来了高度的源码泄露风险.众所周知,xap文件可以被zip等解 ...

  8. C#开发WPF/Silverlight动画及游戏系列教程(Game Tutorial):(十八) 完美精灵之八面玲珑(WPF Only)②...

    紧接着上一节,首先得解释一下为什么需要将这272张图片合成为一张大图.因为如果游戏中还有装备.坐骑等其他设置,那么我们就需要对图片源进行时时的合成:同时对272张甚至更多的图片进行合成效率高还是对2张 ...

  9. WPF/Silverlight Layout 系统概述——Measure(转)

    前言 在WPF/Silverlight当中,如果已经存在的Element无法满足你特殊的需求,你可能想自定义Element,那么就有可能会面临重写MeasureOverride和ArrangeOver ...

最新文章

  1. 传真故障排除示例--编码不一致导致传真失败
  2. Redis的Hash操作
  3. 开源网店系统_amazon都做不行,就不可构建外贸网店系统吗?
  4. activity 生命周期_如何理解安卓activity的生命周期(on-create篇)?
  5. 为什么你的发行版仍然在使用“过时的”Linux 内核? | Linux 中国
  6. HTTP/1.1与HTTP/1.0的区别
  7. JavaScript学习(八十二)—JavaScript的组成
  8. wpf 执行mysql命令_WPF(.net 3.5)使用MySql.Data.dll进行mysql数据库操作
  9. 黑盒测试实践---day2
  10. 用 JavaScript 实现内存位翻转漏洞
  11. 关于vmplayer 和vmrun 同时使用说明文档
  12. 各类常用软件汇总【转载冰封工作室】
  13. Android可拖动对话框Dialog
  14. KEIL编译时Warning: C3008W: splitting LDM/STM has no benefit的消除
  15. mysql创建用户并授权语句_MySQL创建用户与授权
  16. 【内蒙古山西の游记(7.17~7.24)】二周目
  17. 随身WiFi制作Linux服务器
  18. leetcode 322. Coin Change-硬币交换|动态规划
  19. 软文无本生利自动赚钱法
  20. 功能演示:使用Java加密和解密Excel文件

热门文章

  1. 编译cubieboard android 源码过程详解之(六):pack
  2. ios 时间戳 当前时间 相互转化
  3. Nobody can go back and start a new beginning, but anyone can start now and make a new ending.
  4. TQuery组件的Open方法与ExecSQL的区别
  5. jsp标记之动作标记介绍
  6. vue2.x+springboot1.x+nginx服务器部署踩坑日记
  7. 获取access_token
  8. java 备份 mysql 日志_MySQL 数据备份与还原
  9. oracle 转 mysql 乱码问题吗_Oracle数据传输MySQL中文编码问题
  10. 软件构建--项目总结