首页 > 代码库 > Windows.Andy.Code4App.dll Win8.1/WP8.1通用类库@ver1.0.0

Windows.Andy.Code4App.dll Win8.1/WP8.1通用类库@ver1.0.0

直接入题!

Win8.1和WP8.1眼下已经渐渐融为一体,WP8.1不断向Win8.1靠拢,虽然一些方法上WP8.1和Win8.1不同(ps:WP8.1和Win8.1的不同之处),但大部分还是相同的。

为了方便能够在WP8.1和Win8.1调用同样的方法,减少不必要的麻烦,现将我个人总结的一些简单的方法封装一下。代码很简单,不妥之处,还请各路大神多多指教~

 

Windows.Andy.Code4App.dll项目工程结构如下:

 

一、Extension:

1、CommandEx:

主要是使用依赖属性实现控件任意方法都能使用MvvmLight的Command,实现View和后台代码的进一步分离。

比如,对Grid的Tapped方法做下扩展。

用法如下:

对于CommandParameter可传的参数包括字符串、某个控件的属性值以及某个控件本身,写法和MvvmLight自带的CommandParameter一样,大家都已经很熟悉了,这里就不多说了。

 

可以看到预留了DependencyPropertyEx,主要是对控件自身的一些属性进行扩展,比如图片的Source属性,扩展一下可以使图片显示的时候随机动画什么的。这里还没写,下次扩展加入。

2、MessageDialogEx:

这里主要是对MessageDialog做扩展,参考了WinRTXamlToolkit,添加了ShowAsyncQueue和ShowAsyncIfPossible。主要解决的问题是当两个MessageDialog同时要弹出的时候应用就会奔溃。不知道大家遇到没,抑或大家怎么解决的?使用此扩展就可以避免此问题。大家还有什么好的方法可以交流交流。

用法如下:

(注意添加命名空间的引用:using Windows.Andy.Code4App.Extension;)

3、VisualTreeHelperEx:

这个大家很熟了,不多说。

用法如下:

二、SerializationAndDeserialization:

1、JsonConvert:

主要是对json进行序列化和反序列化,不多说,很简单。

用法如下:

序列化

反序列化

一个自动生成json序列化反序列化数据model实体的网站:http://json2csharp.com/

一个格式化查看json字符串的网站:http://json.parser.online.fr/

2、XmlConvert:

主要是对Xml进行序列化和反序列化,不多说,很简单。

用法如下:

序列化

反序列化

三、Store:

(Fixed表示永久存储,应用只要不卸载就一直存在;Temporary表示临时存储,只要关掉应用数据就消失)

1、Fixed/JsonStore

这里的存储主要是把Json序列化后的数据保存为一个个的文件存到LocalFolder文件夹下。同样也可以从LocalFolder下读取到指定的文件数据并反序列化出来。这个常用吗?或许用多了就知道它的用处了。

用法如下:

序列化存储

现在查看LocalFolder下文件,就出现了一个以“date.jk”命名的json方式序列化保存了当前时间文件。

反序列化读取

2、Fixed/XmlStore:

主要是相对Json方法序列化存储数据,这里采用xml的方式来序列化存储数据。

用法如下:

序列化存储

现在查看LocalFolder下文件,就出现了一个以“date.xk”命名的json方式序列化保存了当前时间文件。

反序列化读取

3、Fixed/SettingdStore:

这里主要使用了系统的ApplicationData的LocalSettings来序列化存储和反序列化存储。

注意:此方法只能序列化一些基本的数据类型,例如DateTime类型就不能使用此方法,可以是使用JsonStore或XmlStore来替代。

用法如下:

序列化存储

反序列化读取

4、Temporary/DicStore:

这里主要是使用Dictionary来实现序列化存储和反序列化存储。Dictionary是临时存储,应用重启数据就消失了。

用法如下:

序列化存储

反序列化读取

 

 

以上就是Windows.Andy.Code4App.dll @ver1.0.0的内容,功能太少,需要封装的还有很多很多,后续再添加。

 

组件下载地址:Windows.Andy.Code4App.dll

 

Windows.Andy.Code4App.dll Win8.1/WP8.1通用类库@ver1.0.0