摘要: 在silverlight中实现带删除线的字体之前写了一个WPF的文本对比工具,最近想把它改为为Silverlight版本,遇到的一个问题是Silverlight中RichTextBox没有删除线,于是只好自己写一个控件。简单思路如下:在一个textblock上面放一个Line,Line随textblock的大小的改变而改变。View Code 1 [TemplatePart(Name = InlinesEx.ElementTextName, Type = typeof(TextBlock))] 2 [TemplatePart(Name = InlinesEx.ElementStrikeLin. 阅读全文
posted @ 2012-07-11 22:17 蒲西 阅读(858) 评论(1) 推荐(0) 编辑
摘要: N-Puzzle GameN-Puzzle 是一种滑块类推盘游戏,常见的有15-puzzle和8-puzzle。如下图所示,由15个方块和一个空位组成,规则很简单,移动方块,让所有的方块按照数字的顺序排列。使用Silverlight实现如下:那么如何使用算法来解决15-puzzle,已得到一个在任意状态下到达最终按顺序排列的一个路径呢?IDA*(Iterative Deepening A*) 算法IDA*是迭代加深的A*算法,深度优先,一次只记录一条路径,减少空间需求。简单来说,给定一个限定值limit,开始深度优先搜索,当前节点的F()(估值函数)值超过limit时结束,然后每次增加limi 阅读全文
posted @ 2012-07-02 22:27 蒲西 阅读(4639) 评论(0) 推荐(1) 编辑
摘要: 网上对于WPF的媒体播放器的实现,和文本对比算法的讨论也颇多,我将这两者结合制作了如下的听写对比的小工具。设计方面借鉴了沪江小D的听写酷,写这个工具的本意是想方便自己做听写用,不过正好借此机会熟悉了WPF各种控件,MVVM模式等。MediaElement使用MediaElement播放媒体文件,主要实现功能:打开文件、播放、暂停、停止、重复播放、进度控制、音量大小控制。键盘快捷键支持:F7:播放、暂停;F8:重复播放至当前位置(即播放从S到E)文本对比对比算法参照这位仁兄的剖析http://blog.csdn.net/clariones/article/details/1396880当然还存在 阅读全文
posted @ 2012-05-02 21:50 蒲西 阅读(883) 评论(2) 推荐(0) 编辑