事过境迁
文章平均质量分 79
东邪独孤
欢迎来到桃花岛宇宙万物尽在其中
展开
-
Windows Phone开发(40):漫谈关键帧动画之中篇
一、DiscreteDoubleKeyFrame离散型关键帧动画,重点,我们理解一下“离散”的意思,其实你查一下《新华字典》,“离”和“散”的意思相近。我们可以这样解释:每个关键帧之间是直接过渡,其间不经过动画插补。似乎这样理解有点苦涩难懂,所以,我们还是从实例入手。请参考以下XAML代码写一个示例:原创 2012-05-12 12:11:51 · 5375 阅读 · 4 评论 -
Windows Phone开发(43):推送通知第一集——Toast推送
好像有好几天没更新了,抱歉抱歉,最近“光荣”地失业,先是忙于寻找新去处,唉,暂时没有下文。而后又有一些琐事要办,不过不要紧,今天咱们继续。动画的内容就告一段落,本系列文章只作简单引导,不会覆盖每一个细节,最终能不能学好,就完全看各位自己了。 从本节开始,我们将讨论推送通知,这个东西不太好理解,而推送通知的原理和过程,如果你看MSDN的示意图,相信你会有点晕,若不,我帖出给你看看。原创 2012-05-30 21:39:28 · 7356 阅读 · 16 评论 -
Windows Phone开发(41):漫谈关键帧动画之下篇
也许大家已经发现,其实不管什么类型的动画,使用方法基本是一样的,不知道大家总结出规律了没有?当你找到规律之后,你会发现真的可以举一反六的,不骗你。为了能帮助大家找到规律,今天,我们再来写两个例子。 一、DiscreteObjectKeyFrame简单介绍一下这个吧,它只是为了方便我们进行一些大的切换而提供,但它也不是万能的,尽管它的目标类型是object类型,前提是它与其它动画一样原创 2012-05-16 17:36:41 · 4562 阅读 · 1 评论 -
Windows Phone开发(44):推送通知第二集——磁贴通知
前面我们说了第一个类型——Toast通知,这玩意儿不知大家是不是觉得很新鲜,以前玩.NET编程应该没接触过吧?其实这东西绝对不复杂,只是刚接触的时候会有点莫名罢了,Toast通知和今天要说的磁贴通知,都有一个共同点,那就是格式都规定死了D。本质就是向特定的URI地址POST一个XML文档罢了,相信很多人都会,如果你还不会,真的,要补一补基础课了。 多说无益,还是快点切入主题,开门见原创 2012-06-08 12:12:02 · 5754 阅读 · 0 评论 -
Windows Phone开发(42):缓动动画
前面在讨论关键帧动画的时候,我有意把几个带缓动动画的关键帧动画忽略掉,如EasingColorKeyFrame、EasingDoubleKeyFrame和EasingPointKeyFrame,其实为数不多,就这么几个。因为我希统一放到这节课程来吹一下缓动函数。所谓缓动函数,就是我们在代数里面说的函数,说白了嘛,就是根特定的函数规则,用输入的值算出最终值,使得动画在两个关键帧之间不再是均衡原创 2012-05-21 22:14:53 · 14791 阅读 · 1 评论 -
Windows Phone开发(45):推送通知大结局——Raw通知
为什么叫大结局呢?因为推送通知服务就只有三种,前面扯了两种,就剩下一种——Raw通知。前面我们通过两节的动手实验,相信大家都知道了,推送通知其实并不复杂,为什么呢?你看到了的,不管是哪种方式,使用方法基本一样,如果你不愿意写代码的话,完全可以把代码Copy几下就完事了,三种推送通知的实现代码是一样的,而仅仅是发送的内容不同罢了。Raw推送通知比起前面两种更简单,因为它没有规范的格式,只要你原创 2012-06-13 16:45:20 · 4006 阅读 · 2 评论 -
Windows Phone开发(9):关于页面状态
按照一般做法,刚学会如何导航,还是不够的,因为要知道,手机里面的每个页面,就如同Web页面一样,是无状态的。啥是无状态?如果我们玩过Web开发就明白了,当你在当前页面输入一些内容,然后退回到前一页面,再前进到该页面,就会发现,之前输入的内容可能会没了。再比如吧,你在页面A中进行了数据绑定,点击按钮后进行查询并把查询结果显示在表格中,然后你点击一个超链接,跳到D页面,然后你再从D页面退回A页原创 2012-02-24 22:01:15 · 7488 阅读 · 11 评论 -
Windows Phone开发(46):与Socket有个约会
不知道大家有没有“谈Socket色变”的经历?就像我一位朋友所说的,Socket这家伙啊,不得已而用之。哈,Socket真的那么恐怖吗?其实这话一点也不假,Socket有时候真的不太好操控,也不好维护,但不管怎么样,我们还是要面对它的,没准Socket是一位大美女哦。关于Socket的前世今生就不用我详述了,关于她的历史,已经不少人仁志士为她立传写著了,像我们国内的百度百科、互动百科等;全原创 2012-06-16 20:09:39 · 9643 阅读 · 17 评论 -
Windows Phone开发(47):轻松调用Web Service
众所周知(除了没用过VS的),在VS里面调用Web Service是一件很愉快的事情,不解释,相信很多朋友在以前的项目中肯定也用过WEB服务。同样,在WP中调用Web Service也是非常简单的,你可以不信,反正我绝对信了。 有例子有真相,我们就以http://webservice.webxml.com.cn/WebServices/IpAddressSearchWebService.a原创 2012-06-22 10:57:39 · 6617 阅读 · 9 评论 -
Windows Phone开发终结篇:反思、建议与忠告
终结篇,有朋友看了,啊?不是吧?是的,这是本系列Windows Phone文章的最后一篇,本文将对本系列文章做一个简要总结,并根据个人想法向大家提一些建议和对开发者一些忠告,但愿能有一点点参考价值。大家知道了,WP8发布预览版了,虽然先前版本不能升级到WP8,有一点可惜。但我们不要像那些不冷静的人那样,一听到消息就骂,至少,我们还看到后面还有一句话:WP 7.X的应用可以在WP8上面运行,其实原创 2012-06-22 22:07:24 · 16114 阅读 · 65 评论 -
Windows Phone开发(48):不可或缺的本地数据库
也许WP7的时候,是想着让云服务露两手,故似乎并不支持本地数据库,所有数据都上传上“云”数据库中。不过呢,在SDK 7.1后,又加进了本地数据库功能。这个本地数据库的操作,与我们平常在WindowsForm或WPF项目中所使用数据库的情况有些不一样:一者没有图形化的设计器;二来不使用SQL语句。那么,你一定会问:“那用什么来处理与数据库的交互?”不知道各位.NET基础学得怎么样,如果你原创 2012-06-22 17:57:54 · 6934 阅读 · 14 评论 -
深入浅出.NET代码生成系列(4):定义类型
CodeTypeDeclaration类可以为我们定义类、结构、接口等。1、BaseTypes描述要定义类型的基类型。2、Members当然是定义类型的成员了,如属性、方法、事件等。3、IsClass、IsEnum、IsInterface、IsStruct这几个就好理解了。4、TypeAttributes就是对类型的特性描述了,比如public、static等。5、TypePa原创 2012-07-05 18:18:24 · 2789 阅读 · 0 评论 -
深入浅出.NET代码生成系列(1):概述
Visual Studio之所以强大,就因为它能为开发者尽可能地生成一些代码,免去了我们经常性去做一些无意义的,机械化的操作,从而使开发者不必把时间和精力都花在细枝末节上,能更专心于程序的核心部分,开发效率也大大提高。说到这代码生成,实话说,在日常的开发任务中,似乎使用的频率不高,而且,动态编译也有一个消耗性能的过程。那么,我们需要对代码生成有点了解吗?应该说是有这个需要的,说不定哪一天会原创 2012-06-27 11:09:58 · 6989 阅读 · 8 评论 -
深入浅出.NET代码生成系列(5):表达式
表达式,这数量说起来就可观了,不过说起来它们都有共同的爹——CodeExpression类。在MSDN在查找CodeExpression类,从继承关系列表中我们就可以看到所有的与代码表达式生成有关的类。 哎哟,妈啊,这么多,你看到这一串家伙,害怕不?哈哈,不要害怕,别看它们“类”多势众,其实并不复杂,而且使用方法也差不多。至于一个个介绍嘛,那显然不现实的,也没有意义,既然MSDN上都有原创 2012-07-10 21:24:49 · 2810 阅读 · 0 评论 -
深入浅出.NET代码生成系列(2):一些基本类
既然叫“深入浅出”了,那我们先来深一下,好吧? 一、用到了哪些命名空间?说白了,基本上与代码生有关的类都在System.CodeDom命名空间和System.CodeDom.Compiler。不知道各位对这两个命名空间熟悉指数是多少? 二、CodeDomProvider类该类位于System.CodeDom.Compiler命名空间下,它是一个抽象类,有朋友可以疑问了,这…原创 2012-06-28 21:41:47 · 4673 阅读 · 1 评论 -
深入浅出.NET代码生成系列(3):命名空间
上一篇文章后面,我做了一个简单的示例,不知道各位有没有印象。哈,没印象也没关系,今天我们来探讨一下如何生成命名空间的代码。其实,说的就是CodeNamespace类,这个类就是用来生成命名空间定义的代码的。(1)Imports属性:一个CodeNamespaceImport对象的集合,这个CodeNamespaceImport类与CodeNamespace类有啥不同呢?CodeNamesp原创 2012-06-30 21:07:14 · 2928 阅读 · 1 评论 -
深入浅出.NET代码生成系列(6):语句
生成代码语句(可以理解为带分号结束的代码,除了if,for这些)所使用到的类,都是从CodeStatement,因此,要知道.NET类库所提供的类能生成哪些代码语句,从MSDN参考文档中找到CodeStatement类,然后,还是老方法,查看它的继承关系。就可以“一览众山小”。 我还是坚持老方法,不会从理论层面去介绍每个类如何使用,因为,我们要学习的内容,在MSDN上是绝对能找到的,因原创 2012-07-15 20:41:43 · 3376 阅读 · 0 评论 -
深入浅出.NET代码生成系列(7):动态生成代码与编译综合示例
前面说了这么多,大家可能会觉得,好像没弄出个玩意儿来啊,对啊,所以,本文就来个可以弄出个玩意儿的东东。说明一下,这是一个综合示例,分为两大部分,第一部分,生成代码,输出到控制台窗口中;第二部分,把这些代码动态进行编译,并生成一个WinForm应用程序,双击动态编译的程序可以运行起来,点击窗口上的按钮,会弹出一个对话框。好,下面我把整个示例的代码贴出来,很简单,你就新建一个控制台应用程序原创 2012-07-19 21:31:16 · 4055 阅读 · 2 评论 -
传说中的WCF(3):多个协定
近几天忙于一些事情,没有更新博客,灰常抱歉。我们知道,WCF服务端是先定义服务协定,其实就是一个接口,然后通过实现接口来定义服务类。那么,有一个问题,如果一个服务类同时实现N个接口(也就是有N个协定)呢?结果会如何?不必猜,我们还是通过实验来说明吧。首先,参照下面代码写好服务器端,代码中,我写了三个协定,然后一个服务类同时实现它们。using System;using Syst原创 2012-08-05 23:33:41 · 6334 阅读 · 10 评论 -
传说中的WCF(4):发送和接收SOAP头
如果你实在不明白Header是个啥玩意儿,你就想一想你发送电子邮件时,是不是有个叫“附件”的东东?对啊,那么SOAP头是不是可以理解为一种附加信息?就是附加到消息正文的内容。消息正文又是啥?WCF除了流模式传输数据外,剩下的基本来说就是消息模式。我们不妨这样理解,WCF的服务器端和客户端是通过消息来交互的,就像我们之间在发短信一样,我发给你,你可以回复我,这叫“双工”,不好读吧,叫双向好了;你原创 2012-08-09 11:41:19 · 11055 阅读 · 13 评论 -
传说中的WCF(1):这东西难学吗?
WCF难学吗?是啊,这问题估计很多人都会问,也包括阿拉在内,也有此深刻而严重的凝问。也有人说:“如何某项技术可以化繁为简,学起来轻松一点就好了。”也许,人类开生就摆脱不了一种习性——懒惰;不过,也有人认为,很多时候,人们是不是总喜欢把简单的事情复杂化,那么,很多人都觉得很复杂的WCF算不算被人们“神话”了呢?这个问题,我不作回答,现在我们要做一件事,一起来跟着我的步骤,写一个程序再说。原创 2012-07-27 12:14:46 · 11787 阅读 · 23 评论 -
传说中的WCF(2):服务协定的那些事儿
上一篇文章中,我们抛出了N个问题:WCF到底难不难学?复杂吗?如果复杂,可以化繁为简吗?其实,这些问题的答案全取决于你的心态,都说“态度决定一切”,这句话,不知道各位信不信,反正我是信了。首先,敢于挑战自我,乐于接受新事物的人,就不会觉得有啥难学的,“世上有难事,只怕有心人”;再者,WCF当然复杂了,整个.NET框架都复杂,但不难学,因为.NET有一个先天性优点——集成性和统一性严重地好,这也原创 2012-07-29 12:35:01 · 7762 阅读 · 5 评论 -
新时尚Windows8开发(5):消息框
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 在Windows 8 Modern界面应用程序中 ,已然没有了我们过去很熟悉的MessageBox,那么,如果我们需要弹出提示框怎么办呢?因此,我们先来认识一个类——MessageDialog(位于Windows.UI.Popups命名空间)。对的,看名字估计也能猜个七八成了,我原创 2012-08-31 10:50:54 · 4808 阅读 · 5 评论 -
新时尚Windows8开发(2):应用程序生命周期
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 创建Win8“板砖”应用后,我们不妨关注一下App类。在生成的代码中我们可以看到,主要处理了两个事件:一、重写OnLaunched方法;二、处理Suspending事件。App类的代码如下,这是项目模板生成的。namespace MyApp{ ///原创 2012-08-18 11:20:20 · 6554 阅读 · 1 评论 -
新时尚Windows8开发(3):应用程序状态
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 大家可能还记得,在WP开发中,我们曾讨论过应用程序状态。同样地,在Win8开发上,我们还可以适当地使用这玩意儿。上一节中,我们从应用程序周期中了解到,当我们的“板砖”应用程序不在前台运行时,就会被挂起。而这个挂起行为其实和WP中的差不多,在WP中,其实应用程序的当前状态并不是说每次被放原创 2012-08-22 15:21:21 · 5355 阅读 · 2 评论 -
新时尚Windows8开发(1):如何创建应用程序项目
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 一转眼的功夫,不知不觉也试用了Win8的好几个版本了,具体就不说了,自己装一个去玩玩就知道了,方式有二:1、双系统实机安装;二、虚拟机。对比地试了两下,明显,在实际机器上安装体验要比在虚拟机里面安装要好。鉴于正式版未发布(泄露版不算,我说的是合法的前提下),还是在现有硬盘中割几十G的空原创 2012-08-14 21:42:03 · 13834 阅读 · 18 评论 -
新时尚Windows8开发(7):资源限定符和资源映射
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 上一篇文章中,我们吹了一下资源和本地化,同时也做了一个实例,本文我们再深入探索一下资源限定符和资源路径的映射。这两个玩意儿也许我们在实际开发中并不十分关注,不过,了解一下,还是有好处的。这两个名词看起来就抽象,或者,我们会感觉到,从文字描述无法理解它们,那么,老规矩,我们还是用实验来看原创 2012-09-05 12:08:29 · 2963 阅读 · 0 评论 -
新时尚Windows8开发(6):资源 & 本地化
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 在实际开发中,也许我们需要做这样的界面,可分为两种情况:1、应用程序具备多语言版本(如中文简体,中文繁体,英文等),用户界面上显示的文本会根据系统的情况自动套用资源,比如我的系统是简体中文版的,那就使用简体中文的资源文件中的内容。2、用户可以选择语言如简体中文、繁体中文。根据用户选原创 2012-09-02 17:43:31 · 4108 阅读 · 6 评论 -
新时尚Windows8开发(4):保存/读取本地应用程序设置
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 启动VS,打开“对象浏览器”,我们来找一个东西。在“对象浏览器”中找到Windows.Storage命名空间,并注意以下几个类。其中,我们要注意ApplicationData,看看它这名字,你也能猜到它是干哪行的。很明显,它一定与读写应用程序设置有关。嗯,猜得没错,A原创 2012-08-27 11:21:18 · 4502 阅读 · 0 评论 -
新时尚Windows8开发(8):获取设备信息
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 如何获得当前机器上的设备ID,名称以及缩略图,我们需要用到一个类——DeviceInformation类(位于 Windows.Devices.Enumeration命名空间)。使用方法是这样的:1、通过DeviceInformation.FindAllAsync静态方法获得一个Devic原创 2012-09-06 16:35:04 · 3516 阅读 · 5 评论 -
新时尚Windows8开发(9):加密和解密数据
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 对于一些需要特列保护的数据,举个例子,刚从服务器上取到的一堆JSON数据,并保存到本地文件中,你知道,JSON数据是文本,如果我不希望别人查看数据,可以对文件进行加密,今天,我们来看一种比较简单的数据加密和解密。 实现这一构想,我们需要用到Windows.Security.Cryptogr原创 2012-09-11 14:28:47 · 3712 阅读 · 2 评论 -
新时尚Windows8开发(16):如何处理溢出文本
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 准确地说,本文是与各位分享一下小技巧。也不知道各位喜不喜欢。嗯,废话就不说了,先看看我要实现什么样的运行结果。 是的,很像报纸的排版效果,那么,怎么做到的呢?这就要提到一个类——RichTextBlockOverflow。他的用途就是,当RichTextBlock中原创 2012-09-30 17:32:38 · 3822 阅读 · 6 评论 -
新时尚Windows8开发(15):扩展联系人选择器
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上回我们讨论了如何从联系人选择器中选择联系人记录。但,我们也许会发现一个问题,我们都知道,我们选择的联系人都是通过Microsoft帐号从云服务器取出来的,那么,如果我有自己的联系人数据呢?比如,保丰在本地数据文件中的,或者从我的Web服务中获取的联系人呢?那这种情况下,还能用联系人选择器来选择吗原创 2012-09-29 17:14:05 · 6649 阅读 · 8 评论 -
新时尚Windows8开发(17):自己也来做一做弹出对话框
Windows Store应用程序有点像Web页面,一般而言,我们只有一个窗口,不会像传统的桌面应用程序那样,使用多个子窗体。前面我们也讨论过MessageDialog类用来弹出对话框,但是,它只能显示文本信息,如果一些复杂的内容,就不能满足我们的要求了。本来考虑Windows.UI.Core命名空间下的CoreWindowDialog类,但,后来发现这个类貌似一个空壳子,反正我是不知道这个类原创 2012-10-02 11:48:41 · 6549 阅读 · 17 评论 -
新时尚Windows8开发(18):制作类似单行簿的输入控件
单行簿,在上小学,初中的时候,相信我们都用过,那我们在让用户输入内容的,如文本框,也能做出这种格式吗?对了,新浪微博Win8客户端,在发表新微博的时候,输入框也是这样的效果,看看下面的图。 新浪微博这个输入控件,是先把TextBox的背景设置为{x:Null},然后在TextBox下面放一个Image控件,再引用一张图片来实现的。而我的做法也差不多,只是在TextBox下面放的原创 2012-10-04 15:46:05 · 5785 阅读 · 7 评论 -
新时尚Windows8开发(10):如何共享文本内容
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 首先请各位看下面的图。 相信微博的这个功能,大家不陌生吧。那么它是怎么实现的呢?首先,我们要了解一个东西,应用程序协定,名称不好理解,也很难翻译,这样吧,我们看看它是在哪里设置的,也许你会有点感悟。用VS2012新建windows store应用后,你会看到项目中有个原创 2012-09-15 12:17:23 · 3171 阅读 · 4 评论 -
新时尚Windows8开发(11):共享目标示例
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上一篇文章中,我们吹了一下共享数据的问题,后面还简单弄了一个例子,本文我们再做一个综合一些的例子,咱们做一个全能共享目标,该目标应用可以接收各种格式的数居。先来认识一个类,该类可以告诉我们标准数据有哪些——StandardDataFormats,这是一个静态类,位于Windows.Applic原创 2012-09-16 18:47:44 · 2998 阅读 · 2 评论 -
新时尚Windows8开发(19):为应用程序定义“设置”面板
我们随便打开一个应用,只要应用的开发者为其应用定义了“设置”的内容,我们就会看到类似下面截图的UI。 这说明了什么呢?说明了在Win8中,你的应用程序设置可以集成到系统的侧边栏中。既然可以实现这样的整合,那么SDK中可定提供了相应的API的,对滴,很好找,而且,要用一的东西基本上都在同一个命名空间下。类不是很多,至少可以说明,一来实现这个功能并不难,二来它们之间的关系也比较好找原创 2012-10-09 17:30:50 · 4831 阅读 · 3 评论 -
新时尚Windows8开发(12):如何选择并打开文件
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 在WinForm时代,我们不能忘记OpenFileDialog,那么,在windows store应用中,又有什么组件功能与之相似呢?它就是Windows.Storage.Pickers.FileOpenPicker,其实,从类的名字我们同样可以知道它的用途,看来,学会几个单词是很必要的哦。原创 2012-09-19 17:31:55 · 4428 阅读 · 3 评论 -
新时尚Windows8开发(13):如何选择保存文件
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上一篇文章中,我们讨论了打开文件的UI,现在,我们继续探索一下保存文件的UI组件,同样道理,也是很简单的。这回我们用到Windows.Storage.Pickers.FileSavePicker类,与上次打开文件的使用方法基本一致。当我们调用PickSaveFileAsync方法后,如果用户进原创 2012-09-20 11:09:35 · 3351 阅读 · 0 评论