直接入题!

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 Win8.1/WP8.1通用类库@ver1.0.0的更多相关文章

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

    在上篇 Windows.Andy.Code4App.dll  Win8.1/WP8.1通用类库@ver1.0.0 已经对Win8.1和WP8.1部分扩展通用类库做了说明,这篇继续对通用类库做扩展.写的 ...

  2. 将Win8.1/WP8.1应用迁移到Universal Windows Platform

    在上一篇在VS2015 RC打开CTP中创建的工程,我们介绍了怎么在RC中打开CTP中创建的Universal 工程,这一篇我们来讲下怎么将Windows 8.1/WP8.1的应用迁移到Univers ...

  3. 解决“C:\Windows\System32\ntdll.dll”。无法查找或打开 PDB 文件问题

    这些提示的问题完全没有必要去理会,因为一般情况下你点击本地windows调试,会报出这样问题很正常. 网上一些介绍什么要去选项卡栏勾选window连接器什么鬼,不建议用该方式,一旦你勾选那个方式虽然不 ...

  4. .net chart(图表)控件的使用-System.Windows.Forms.DataVisualization.dll

    这个案例指在介绍微软这套免费又功能强大的图表控件Microsoft Chart Controls for Microsoft .NET Framework 3.5,通过它,可让您的项目及报表,轻松套用 ...

  5. 启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块

    环境:windows8.1专业版 问题:启动C:\Windows\System32\logiLDA.DLL时出现问题,找不到指定模块 每次开机都会弹出上图所示的信息. 经过查找是罗技鼠标驱动的问题:而 ...

  6. Delphi 缩放图像代码 - 支持PNG透明通道(利用了Windows的windowscodecs.dll)

    要求Delphi2007或者更高版本, 系统要求至少XP-SP2以上 实际上是利用了Windows的windowscodecs.dll这个文件的功能 在VCL里已经封装为TWICImage类 proc ...

  7. 错误:C:\Windows\System32\ssleay32.dll: Can't load IA 32-bit .dll on a AMD 64-bit

    错误:C:\Windows\System32\ssleay32.dll: Can't load IA 32-bit .dll on a AMD 64-bit 错误的原因是:jdk不是64位的,而是32 ...

  8. [转载]解析WINDOWS中的DLL文件---经典DLL解读

    [转载]解析WINDOWS中的DLL文件---经典DLL解读 在Windows世界中,有无数块活动的大陆,它们都有一个共同的名字——动态链接库.现在就走进这些神奇的活动大陆,找出它们隐藏已久的秘密吧! ...

  9. Fix Windows 7 Msvcp71.dll And Msvcr71.dll Missing Error

    Fix Windows 7 Msvcp71.dll And Msvcr71.dll Missing Error Fix Msvcp71.dll And Msvcr71.dll Missing Erro ...

随机推荐

  1. 给jdk写注释系列之jdk1.6容器(1)-ArrayList源码解析

    工作中经常听到别人讲“容器”,各种各样的容器,话说到底什么是容器,通俗的讲“容器就是用来装东西的器皿,比如:水桶就是用来盛水的,水桶就是一个容器.” ok,在我们写程序的时候常常要对大量的对象进行管理 ...

  2. MapReduce的方式进行HBase向HDFS导入和导出

    附录代码: HBase---->HDFS import java.io.IOException; import org.apache.hadoop.conf.Configuration; imp ...

  3. OpenShare vs Sharepoint

    光合信息Openshare是基于SharePoint,Exchange等开发的企业协同门户产品,许多朋友问为什么不直接就用Sharepoint建立企业门户解决方案,而要建议用OpenShare来进行? ...

  4. MyBatis(3.2.3) - Integration with Spring

    MyBatis-Spring is a submodule of the MyBatis framework, which provides seamless integration with the ...

  5. ZooKeeper(3.4.5) - 原生 API 的简单示例

    一.创建会话 1. 创建一个基本的ZooKeeper会话实例 package com.huey.dream.demo; import java.util.concurrent.CountDownLat ...

  6. Spring与Hibernate整合之通用Dao的实现

    在上一篇文章中写了如何直接利用HibernateTemplate进行数据库操作,但在一般的项目中很少直接得到HibernateTemplate的Bean对象从而操作数据库的,下面就简要介绍一下实现通用 ...

  7. [转]C#如何在ListView失去焦点的情况下仍然保持Item高亮

    private void listView1_SelectedIndexChanged(object sender, EventArgs e) { foreach(ListViewItem itm i ...

  8. Crontab使用mailx的一点发现

    要用到Crontab定时任务去执行一个Shell脚本监控Linux系统资源并且当一些数字超过预设的话发送邮件警告.首先是linux的sendmail功能无法满足我们使用SMTP服务器并且指定发送者(E ...

  9. asp.net select Case条件语句的使用方法

    原文:http://www.111cn.net/net/vb-net/38548.htm 如果 testexpression 与任何 Case expressionlist 表达式匹配 ,则执行此 C ...

  10. [DevExpress]ChartControl之SeriesTemplate示例

    关键代码: using System; using System.Data; using System.Windows.Forms; using CSharpUtilHelpV2; using Dev ...