- 博客(7)
- 资源 (3)
- 收藏
- 关注
原创 【最佳实践系列】一种WPF应用程序数据验证模式
输入数据的验证经常发生在用户录入数据后,在对输入数据进行处理前对其进行检验,确定其是否满足一定的规则。这里介绍一种经验法则,用于频繁的数据验证过程。注:下面的例子用到一个用于表示均匀分布参数设置信息的类 /// /// 均匀分布类 /// public class UniformDistribution { public dou
2015-11-15 14:22:13 372
原创 【最佳实践系列】基于序列化技术的XML数据源操作模式
假定应用程序的输入数据来自于一个结构化的XML文件,那么首先我们要根据需要的数据格式设计类型(class),其中要求类型中的公共属性能够被XML序列化,例如Dictionary类型就不能直接被序列化而List则能够。保存数据时,直接将类型实例序列化到外部XML文件中即可;读取时则反序列化,这样能够简化XML文件的读写逻辑,有利于应用程序的快速实现。举例如下:下面的例子需要引用using Sys
2015-11-15 13:59:43 300
原创 【最佳实践系列】一种面向数据的WPF应用框架
如图所示,这个框架模式的核心是一个全局信息类,假定为GlobalUse.cs,其中保存有从数据源或保存的项目文件中读取的数据,其他功能模块直接在这些数据上进行操作,从而使得数据的呈现和修改都能够方便地实现。
2015-11-15 12:45:10 489
原创 【最佳实践系列】WPF多个窗口间消息的实时传递与响应
本文提供一种基于全局更改通知属性的消息传递方法,可以在本窗口以及多窗口间实现消息的实时传递和响应,具体实现如下步骤所示:1、定义消息类和全局静态消息资源 public class Messager : INotifyPropertyChanged { private string msgStr; public string MsgStr
2015-11-13 21:14:58 4899 1
原创 【最佳实践系列】灵活使用单机应用程序中的数据库
一、工程背景 假定一个应用程序(App)需要新建、打开和保存项目文件,并且每个项目文件中又包含数据文件的情形,那么要求在创建或编辑项目的过程中动态的创建数据库文件,或者已知数据库结构时在应用程序中包含一个空的数据库文件,然后在需要时将其副本拷贝到当前项目的工作目录下。下面给出一种实现模式,实现这种面向单机的数据库使用方式。二、工具 我们以VS2012+SQLite作为工具实现上述任
2015-11-11 14:41:01 743
原创 C# 委托
1、语法基础将函数作为参数传递在C及C++中是用函数指针,在Lisp中函数本来就是参数的一种,而在C#中则用到的是委托——Delegate。委托实际上是一种引用类型(引用程序中以后会被调用的一个或一组方法,派生自System.MulticastDelegate),跟类(class)、接口(interface)等是类似的。定义一个委托的例子:public delegate double
2012-12-10 22:36:25 245
原创 C#匿名类型及Lambda方法
一、匿名类型产生的背景 C#是一种强类型语言,即每个变量都必须在使用前声明其数据类型,无论是语言内置的类型还是自定义类型。而我们了解在许多其他语言中变量是可以“直接使用的”,即无需声明,由编译器决定变量标识符,例如Matlab,Javascript,Lisp等。不知道是不是因为Linq中对查询语句的革新,使得匿名类型开始凸显价值。匿名方法,即Lambda表达式,是提高编码效率的一大利器,它的
2012-12-08 10:54:51 1478
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人