代码改变世界

一步一步分析Caliburn.Micro(二:绑定执行方法Message现学现卖之自定命令)

2012-08-17 10:12 by 旦旦, 2515 阅读, 1 推荐, 收藏, 编辑
摘要:还记得上章中说到的CM演示程序中出现的cal:Message.Attach="[Key Enter] = [EnterPressed]" 吗?在分析代码中可是见不到Key这个事件触发关键字的.看看CM是怎么允许让我们在适当的范围内修改吧.打开在官网上下载的原代码的samples目录下Caliburn.Micro.KeyBinding方案.打开解决方案发现项目很简洁没什么文件.KeyBindingBootstrapper.cs 对这个委托的重写会不会觉得让人觉得很特别呢.看上去很不习惯呢.让我们以一个正常的重写代码.演示下这段代码protected override Trig 阅读全文

一步一步分析Caliburn.Micro(一:绑定执行方法Message)

2012-08-15 11:34 by 旦旦, 5451 阅读, 2 推荐, 收藏, 编辑
摘要:分析扩展类Message.Attach前我们现以标准MVVM的形式看下,通过比较才会知道CM带来的方便.下面用的例子都为CM源码中找出来的代码段.cal:Message.Attach="DeactivateItem($dataContext, 'true')"cal:Message.Attach="[Key Enter] = [EnterPressed]"cal:Message.Attach="[Event MouseDoubleClick] = [Action ShowView]; [Event Click] = [Actio 阅读全文

一步一步分析Caliburn.Micro框架(序)

2012-08-14 10:26 by 旦旦, 4665 阅读, 5 推荐, 收藏, 编辑
摘要:Caliburn.Micro(多数人叫CM)是一个开源的MVVM开发框架,主要应用范围是WPF\Silverlight\WinPhone以Xaml为UI的开发框架.与众多的MVVM框架相比较.个人觉得CM是我用得最习惯最快捷的一个框架.让人的感觉到不会像微软的prism很大很臃肿,又不像MvvmLight轻巧到只有几个文件只能做简单的MVVM功能.与我一起用过CM的同事都说这个框架用起来很方便.直接实例对象然后放到一个WindowsManager的类或.Conductor<IShell>.Collection.OneActive继承类上的特定方法就可以与UI自动绑定(虽然用的是命名 阅读全文

不用ADOX.CatalogClass创建Access数据库文件

2012-08-02 16:18 by 旦旦, 4274 阅读, 1 推荐, 收藏, 编辑
摘要:由于项目须要动态创建Access数据库,网上现在所有创建Access文件的方法都是采用ADOX.CatalogClass这个方法不是不好,但我只是为了创建一个文件而以,然后的表\视图都可以通过Sql语句来创建的.觉得根本没有必要引用COM组件,大家都知道COM组件是Window下才能使用的.如果项目以后移植到Linux\Mac系统上的Mono平台上时就这个功能就废掉了(虽然现在Mono连接Access比较麻烦主要是非Window平台没有Microsoft.Jet.OLEDB,从而要下载MDB Tools才能使用非Window平台访问Access,所以一搬现在很多人在非Window系统下都会采用 阅读全文

C# LinQ 与 ADO.NET

2012-05-10 11:14 by 旦旦, 3939 阅读, 4 推荐, 收藏, 编辑
摘要:在本文LINQ中,匿名类型广泛使用与查询表达式中的select子句,它们返回查询序列中每个元素属性的子集.在本文中ADO.NET,指定DbDataAdapter所生成的DataTable。操作为两个DataTable的查询操作或两个IList的查询操作。场景主从表比对操作:上传的数据可能存在版本不一致,基础信息都不会有变化但扩展的表或字段会不存在,原因是客户端存在没有升级的情况。系统从Access数据库文件中取数据,使用整合后把相关数据并统计后对数据进行入库到系统数据库。部分的字段不能直接入库需要进行转换处理。由于数据库数据在进行操作时已经不会产生任何的变化。可以把数据都预先读取到内存当中。从 阅读全文

整理的C# 字符串类

2008-11-27 16:54 by 旦旦, 691 阅读, 0 推荐, 收藏, 编辑
摘要:CodeCode highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Runtime.InteropServices;n... 阅读全文

取远程网页数据 WebClient,HttpWebRequest

2008-11-10 11:29 by 旦旦, 4692 阅读, 0 推荐, 收藏, 编辑
摘要:修改版,由于取的网站多对应加了修正.我就没发新贴了.1,同一个用户(或浏览器)的不同请求共享同一个变量储存空间,就称其为Session(会话) Session内的变量保存在服务器中。 用SessionID以区别不同的Session(会话),因为不是一个用户在请求。 2,众所周知HTTP是无连接的,所以服务端和客户端交流时协商好使用些什么标志来保持Session(会话)状态,于是出现了Cookie(... 阅读全文