新时尚Windows8开发
文章平均质量分 84
秉承作者一贯以实例引导,轻松学习的理念,摒弃传统教程模式。全面,简练地讲述Windows Store开发相关知识和实战技巧,希望此系列文章能为广大Win8开发者提供上些参考,为Windows8应用技术领域贡献绵薄之力。
东邪独孤
欢迎来到桃花岛宇宙万物尽在其中
展开
-
新时尚Windows8开发(40):StreamSocket的使用
在Windows Store应用程序中使用Stram Socket与桌面客户端进行通信,一直没弄成功,总让俺觉得很震精,怎么会不成功呢。后来经过几回测试发现,原来是在DataReader那里出了问题,总算弄成了。Stream Socket通常用于传输一些比较长的数据,如文件。但这里为了使演示变得更容易理解,我传输了一段字符。首先,我们用WinForm做一个服务器端。界面不复杂,目的是侦听连原创 2013-01-19 11:15:52 · 14699 阅读 · 0 评论 -
新时尚Windows8开发(39):文件的Read和Write
文件的读写对我们来说不应该陌生,而应该说是非常熟悉了。在学习.NET其他开发技术的时候,IO是我们必须学习的,毕竟那是数据存储与处理的最基本操作。在Windows Store应用程序开发中,同样需要对文件的读写,但由于安全与权限的限制,我们不可能像以前那样“自由干活”了。这是有好处的,我们要知道,“板砖”应用是针对移动平台的,至少通常情况下是这样的。如果我们希望像过去一样可以自由地读写各种路径原创 2012-12-07 14:11:59 · 4093 阅读 · 1 评论 -
新时尚Windows8开发(38):聊天程序
Socket一直是一个痛苦的玩意,不过,还是要把它说一说,其实,我们完全可以用WCF实现网络通信功能。今天先说说DatagramSocket类,别看这名字好像有些陌生,其实,说白了,这家伙只是换了个“马甲”罢了,本质上说就是UDP传输,最适合做就是传输一些简单的文本信息,所以,弄个聊天程序相当合适。由于Windows“板砖”应用一般是一个应用窗口占满整个屏幕,有时候可能会挂到屏幕的一边,为原创 2012-12-04 15:19:45 · 4242 阅读 · 8 评论 -
新时尚Windows8开发(37):获取和设置用户头像
要获取用户相关信息,主要是利用Windows.System.UserProfile 名称空间下的UserInformation类,这个家伙是静态类,你应该知道怎么用了。获取如用户名之类的就TMD简单了,只需调用对应的方法就完事了,而咱们今天的示例,是获取,设置用户的头像。 获取用户头像调用GetAccountPicture方法;设置用户头像调用SetAccountPictureAsyn原创 2012-12-01 12:21:25 · 4364 阅读 · 0 评论 -
新时尚Windows8开发(36):Play To的一些事情
这个Play to,我还是用它原名,因为不知道怎么翻译,尽管MSDN上译为“播放到”,但总感觉有些别扭。要说这玩意儿,用来干吗,我还真有点……总之,它的大致用途就是同一个网络中,如家庭组,其中有N台windows 8计算机,A计算上正在播放多媒体,这个时候,可以把流媒体发送到B,C,D其他电脑上播放。于是,我想到什么场合会用得上它呢?放电影,比如我现在在A机器上播放一部恐怖片,咱们一群哥们原创 2012-11-26 17:52:21 · 4453 阅读 · 1 评论 -
新时尚Windows8开发(35):后台传输
所谓后台传输,关键是突出在,在应用程序不在前台运行时,它仍然可以进行数据传输,一般而言,这个功能用于下载文件比较适合,像“应用商店”的下载应用就是使用了后台传输。这个后台传输当然包括下载和上传了,不过,我想是下载的情况会多一些,呵呵,不知道是不是这样,元芳,你怎么看?好了,不管元芳怎么看了,首先大家做好心理准备,接下来我会讲一点点比较枯燥的东东,不怕,只是一点点而已,我不喜欢长篇巨论,免得原创 2012-11-23 12:00:23 · 3313 阅读 · 4 评论 -
新时尚Windows8开发(34):多媒体文件转码
这个东西相信还是蛮好玩的,有时候我们也确实需要,比如,要将某个MP3转换为WMA文件,或者把MP4转换为WMV文件。Windows.Media.Transcoding命名空间下提供了一个MediaTranscoder类,这个类就是专门用来转码的,用起来也不算很复杂,但把步骤抽象出来说,意义不大,所以,还是老办法吧。 接下来,我们会完成一个简单的应用,主要功能:打开一个MP3文件,然后将原创 2012-11-19 19:46:43 · 2870 阅读 · 1 评论 -
新时尚Windows8开发(33):Json数据处理(B)
上一节我们讨论了如何手动方式来处理JSON对象数据,可能你也发现了,是有些痛苦,那么,用什么方法来读写JSON数据才算好玩?有的,如果你耍过WCF,或许已经想到了——JSON序列化和反序列化。DataContractJsonSerializer类位于System.Runtime.Serialization.Json命名空间,我们只需要简单的调用两个方法就可以完成序列化和反序列化。Write原创 2012-11-16 16:04:00 · 3314 阅读 · 0 评论 -
新时尚Windows8开发(32):Json数据处理(A)
JSON是啥?大家不陌生了吧,估计有人比我还懂,这玩意儿其实我只懂点皮毛,对,就是皮毛,皮和毛,皮包着毛,你看看JSON对象是不是这样?外面套着一对大括号({})是皮,里面有很多毛毛,其实一个JSON对象就好像一个字典集合,有key,也有value,当然,也可以没有key。你看,一个标准的JSON对象大概是这样的。{ '键名' : 键值, '键名' : 键值,原创 2012-11-14 10:47:58 · 5812 阅读 · 2 评论 -
新时尚Windows8开发(31):去掉文本中的HTML标记
告诉EveryBody一个好消息,去掉字符串中的HTML标记,再也不用写正则表达式了,你知道吗?一行代码就够了!事不宜迟,来吧,动手。 1、新建“板砖”应用程序项目。2、在界面中放一个TextBox,用来输入带HTML的文本,一个Button,点击后转换,一个TextBlock,显示转换后的字符串。XAML如下:<Page x:Class="App1.MainPage原创 2012-11-11 10:41:56 · 5767 阅读 · 7 评论 -
新时尚Windows8开发(30):集成“搜索”功能
有很多朋友从应用商店下载了应用,说怎么没有搜索功能?其实是有的,很多应用都有,人家是集成的到系统里面了。所以Win8这个搜索功能灰常有意思,你可以在系统的搜索窗格中选择在任何一个地持搜索协定的应用进行查找,而不必要先打开应用,再来搜索。 我就以一个非常简单的例子演示一下如何集成到系统的“搜索”功能中,绝对是简单的例子。1、新建一个“板砖”应用程序,这个不用我说了。2、添加一个新页面原创 2012-11-10 17:28:58 · 3077 阅读 · 0 评论 -
新时尚Windows8开发(29):多媒体捕捉(高级篇)
这今说的这个所谓高级篇,是相对而言的,就是比上一节说的内容稍稍灵活了一些,不过我想我们在做应用的时候,也很少这么高级去搞,你要说专业的拍摄程序,那压根用不着你做,人家设备提供商就已经开发了,就像我买的Dell的产品,人家就已经提供了一个很强大的拍摄程序了。 不过呢,了解一下,研究一下还是有意义的。这个“高级”内容便是和MediaCapture类有关,主要就是它,你看它的人生阅历不浅,N多个原创 2012-11-09 15:16:24 · 3346 阅读 · 6 评论 -
新时尚Windows8开发(28):多媒体捕捉(低级篇)
先解释一下啥是“多媒体捕捉”,这只是一种直译,说得通俗一点,就是希望应用程序可以调用摄像头拍摄“艳照”或者录制视频。比如美图秀秀可以处理你已经保存的图片,但也可能让你现场来“秀”一下。如果我们需要在应用程序中让用户实时拍摄照片,这个功能就显得必须了。比如,你想弄个偷拍程序,当然,这是做梦,因为出于安全和尊重用户的隐私考虑,Win8“板砖”应用在使用摄像头之前会先问一下用户:“我能用用你的摄像头原创 2012-11-08 11:53:22 · 3165 阅读 · 2 评论 -
新时尚Windows8开发(27):根据应用程序的视图状态调整UI
我们知道,在Win8的屏幕显示中,应用程序会有几种呈现状态,比如“完全占有”、“靠边站”、“填空”,还有屏幕方向的不同而产生不同的UI布局。可能有朋友查看SDK内裤的时候,已经找到了Windows.UI.ViewManagement命名空间下的ApplicationView,通过它的Value属性得到一个关于呈现视图状态的枚举值。就是这个:但是,你可能会想,这值我当然知道如何获取,问题原创 2012-11-05 14:56:24 · 4098 阅读 · 4 评论 -
新时尚Windows8开发(26):后台播放Musics
要说这Windows Store应用像啥,像网页,而且还全屏的,所以,这和传统桌面应用就有着明显的差异,在同一时刻就只有一个应用在前台运行,对,和手机一样。故今天我们的话题,本质上是讨论媒体播放的,不过,如果不顺便考虑一下后台播放,感觉有点……你想,当你启动一个播放音乐的应用,正听着很美的音乐,突然我想看看我微博上有啥更新,回到“开始”屏幕,启动一下微博应用。我靠!音乐停了,你想这多没意思啊。原创 2012-11-04 11:16:05 · 5478 阅读 · 5 评论 -
新时尚Windows8开发(25):缩放视图
前面有一节,我们探讨了分组视图,本节我们再来吹一下有关缩放视图。那么,这视图怎么个缩放法呢?我们拒绝抽象,直接上截图。 上面两个图中,第一个图就是缩略视图,第二张图片展示的是全视图,所以,这样把图一看,胜于千言万语的理论介绍。 要实现这样的效果,我们有两大工具要引入的。其中,第一个是看得见的,那就是SemanticZoom,这个东西乍一看可能有点玄,其实它没什么,原创 2012-10-28 13:02:27 · 3283 阅读 · 0 评论 -
新时尚Windows8开发(24):文本呈现中的奥秘
TextBlock这个东西算得上是最简单的文本呈现控件了,简单到什么程度呢?来,你也启动VS,新建一个项目,一边看一边动手试试吧。要在TextBlock中显示简单文本,设置Text属性即可,如: 然后你运行一下,嗯,看到文本了吧。这时候我想起来,这字体太小了,看不清楚,咋办,能不能修改字体大小,当然,看:修改FontSize后,你会看到字体大小有所变化了。那么,你肯定会原创 2012-10-27 11:29:07 · 4776 阅读 · 4 评论 -
新时尚Windows8开发(23):那些关于按钮的事
一说起按钮,相信没写过程序的人都会异常熟悉,毕竟,作为一个最基本的UI元素,只要是图形化操作系统,都少不了按钮,就连某些DOS程序也有按钮了。所以,这是看得见而且随处可见的东西。 在Win8“板砖”应用开发中,对于按钮类别的控件,我们常用的有以下这些。从上面我们看到了,说更明白一些,就是从ButtonBase派生出来的类。 ButtonButton是最基本,最常用,也是原创 2012-10-25 13:51:10 · 4114 阅读 · 4 评论 -
新时尚Windows8开发(22):ListBox与ComboBox
这两个家伙,对我们来说,是绝对不陌生的,从WinForm到WPF,到Asp.net,我们都会接触到这两个控件,而且我相信我们也经常使用。 ListBox先说ListBox,这个其实很简单,应该说,对于所有的集合控件,都是一样的使用方法,往里面放东西就两种途径:1、数据绑定;2、手动添加项。而ListBox对应的项是ListBoxItem,说得更明白一些,它就是一个Conte原创 2012-10-19 10:49:33 · 9913 阅读 · 9 评论 -
新时尚Windows8开发(21):分组视图
有时候,数据的量比较大,有可以我们需要对其进行分组,以方便查看,就像系统的应用程序列表一样。 其实支持分组视图的控件是ItemsControl控件,不过也许我们比较少用到它,至少,它算是一个半成品,我呢,平时用得较多的要数ListView,因为这个控件很强大,也较为灵活。所以,本文的示例我计划用ListView来完成,其实原理都一样,这个东西完全可以举一反五。在开工之前,先计一下原原创 2012-10-14 12:31:58 · 8815 阅读 · 12 评论 -
新时尚Windows8开发(20):FlipView控件
FlipView控件和我们常见到的ListView、ListBox控件很像,今天拿它来吹一吹,是因为这个控件还挺新鲜的。 要说用文字来介绍这个控件,还真不够生动也欠缺活泼,不过,其实这个控件咱们还是见得不少的,如果你经常到应用商店下载应用的话,你肯定见过。就是这个: 就是这玩意儿,左右各有一个按钮用来导航视图,每次只能查看一个视图,比较适合用于图片浏览。 废话少说,我们原创 2012-10-12 11:18:15 · 10944 阅读 · 5 评论 -
新时尚Windows8开发(19):为应用程序定义“设置”面板
我们随便打开一个应用,只要应用的开发者为其应用定义了“设置”的内容,我们就会看到类似下面截图的UI。 这说明了什么呢?说明了在Win8中,你的应用程序设置可以集成到系统的侧边栏中。既然可以实现这样的整合,那么SDK中可定提供了相应的API的,对滴,很好找,而且,要用一的东西基本上都在同一个命名空间下。类不是很多,至少可以说明,一来实现这个功能并不难,二来它们之间的关系也比较好找原创 2012-10-09 17:30:50 · 4848 阅读 · 3 评论 -
新时尚Windows8开发(18):制作类似单行簿的输入控件
单行簿,在上小学,初中的时候,相信我们都用过,那我们在让用户输入内容的,如文本框,也能做出这种格式吗?对了,新浪微博Win8客户端,在发表新微博的时候,输入框也是这样的效果,看看下面的图。 新浪微博这个输入控件,是先把TextBox的背景设置为{x:Null},然后在TextBox下面放一个Image控件,再引用一张图片来实现的。而我的做法也差不多,只是在TextBox下面放的原创 2012-10-04 15:46:05 · 5796 阅读 · 7 评论 -
新时尚Windows8开发(17):自己也来做一做弹出对话框
Windows Store应用程序有点像Web页面,一般而言,我们只有一个窗口,不会像传统的桌面应用程序那样,使用多个子窗体。前面我们也讨论过MessageDialog类用来弹出对话框,但是,它只能显示文本信息,如果一些复杂的内容,就不能满足我们的要求了。本来考虑Windows.UI.Core命名空间下的CoreWindowDialog类,但,后来发现这个类貌似一个空壳子,反正我是不知道这个类原创 2012-10-02 11:48:41 · 6565 阅读 · 17 评论 -
新时尚Windows8开发(16):如何处理溢出文本
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 准确地说,本文是与各位分享一下小技巧。也不知道各位喜不喜欢。嗯,废话就不说了,先看看我要实现什么样的运行结果。 是的,很像报纸的排版效果,那么,怎么做到的呢?这就要提到一个类——RichTextBlockOverflow。他的用途就是,当RichTextBlock中原创 2012-09-30 17:32:38 · 3838 阅读 · 6 评论 -
新时尚Windows8开发(15):扩展联系人选择器
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上回我们讨论了如何从联系人选择器中选择联系人记录。但,我们也许会发现一个问题,我们都知道,我们选择的联系人都是通过Microsoft帐号从云服务器取出来的,那么,如果我有自己的联系人数据呢?比如,保丰在本地数据文件中的,或者从我的Web服务中获取的联系人呢?那这种情况下,还能用联系人选择器来选择吗原创 2012-09-29 17:14:05 · 6672 阅读 · 8 评论 -
新时尚Windows8开发(14):如何选取联系人信息
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 前面我们讲了如何用文件选择器选取文件,其实,还有一个目录选择器,不过,我先放着不说,因为它用起来和选取文件是一个道理,大家不妨尝试一下举一反六。今天,我们说一说如何从“人脉”中选取联系人信息,说白了,也和文件选取的方法基本一样,后面做实例演练的时候,大家会看到的。 在开始实践之前,我们原创 2012-09-24 14:35:36 · 3531 阅读 · 3 评论 -
新时尚Windows8开发(13):如何选择保存文件
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上一篇文章中,我们讨论了打开文件的UI,现在,我们继续探索一下保存文件的UI组件,同样道理,也是很简单的。这回我们用到Windows.Storage.Pickers.FileSavePicker类,与上次打开文件的使用方法基本一致。当我们调用PickSaveFileAsync方法后,如果用户进原创 2012-09-20 11:09:35 · 3370 阅读 · 0 评论 -
新时尚Windows8开发(12):如何选择并打开文件
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 在WinForm时代,我们不能忘记OpenFileDialog,那么,在windows store应用中,又有什么组件功能与之相似呢?它就是Windows.Storage.Pickers.FileOpenPicker,其实,从类的名字我们同样可以知道它的用途,看来,学会几个单词是很必要的哦。原创 2012-09-19 17:31:55 · 4438 阅读 · 3 评论 -
新时尚Windows8开发(11):共享目标示例
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 上一篇文章中,我们吹了一下共享数据的问题,后面还简单弄了一个例子,本文我们再做一个综合一些的例子,咱们做一个全能共享目标,该目标应用可以接收各种格式的数居。先来认识一个类,该类可以告诉我们标准数据有哪些——StandardDataFormats,这是一个静态类,位于Windows.Applic原创 2012-09-16 18:47:44 · 3016 阅读 · 2 评论 -
新时尚Windows8开发(10):如何共享文本内容
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 首先请各位看下面的图。 相信微博的这个功能,大家不陌生吧。那么它是怎么实现的呢?首先,我们要了解一个东西,应用程序协定,名称不好理解,也很难翻译,这样吧,我们看看它是在哪里设置的,也许你会有点感悟。用VS2012新建windows store应用后,你会看到项目中有个原创 2012-09-15 12:17:23 · 3185 阅读 · 4 评论 -
新时尚Windows8开发(9):加密和解密数据
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 对于一些需要特列保护的数据,举个例子,刚从服务器上取到的一堆JSON数据,并保存到本地文件中,你知道,JSON数据是文本,如果我不希望别人查看数据,可以对文件进行加密,今天,我们来看一种比较简单的数据加密和解密。 实现这一构想,我们需要用到Windows.Security.Cryptogr原创 2012-09-11 14:28:47 · 3725 阅读 · 2 评论 -
新时尚Windows8开发(8):获取设备信息
老周的博客http://blog.csdn.net/tcjiaan,转载请注明原作者和出处。 如何获得当前机器上的设备ID,名称以及缩略图,我们需要用到一个类——DeviceInformation类(位于 Windows.Devices.Enumeration命名空间)。使用方法是这样的:1、通过DeviceInformation.FindAllAsync静态方法获得一个Devic原创 2012-09-06 16:35:04 · 3540 阅读 · 5 评论 -
新时尚Windows8开发(7):资源限定符和资源映射
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 上一篇文章中,我们吹了一下资源和本地化,同时也做了一个实例,本文我们再深入探索一下资源限定符和资源路径的映射。这两个玩意儿也许我们在实际开发中并不十分关注,不过,了解一下,还是有好处的。这两个名词看起来就抽象,或者,我们会感觉到,从文字描述无法理解它们,那么,老规矩,我们还是用实验来看原创 2012-09-05 12:08:29 · 2974 阅读 · 0 评论 -
新时尚Windows8开发(6):资源 & 本地化
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 在实际开发中,也许我们需要做这样的界面,可分为两种情况:1、应用程序具备多语言版本(如中文简体,中文繁体,英文等),用户界面上显示的文本会根据系统的情况自动套用资源,比如我的系统是简体中文版的,那就使用简体中文的资源文件中的内容。2、用户可以选择语言如简体中文、繁体中文。根据用户选原创 2012-09-02 17:43:31 · 4118 阅读 · 6 评论 -
新时尚Windows8开发(5):消息框
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 在Windows 8 Modern界面应用程序中 ,已然没有了我们过去很熟悉的MessageBox,那么,如果我们需要弹出提示框怎么办呢?因此,我们先来认识一个类——MessageDialog(位于Windows.UI.Popups命名空间)。对的,看名字估计也能猜个七八成了,我原创 2012-08-31 10:50:54 · 4820 阅读 · 5 评论 -
新时尚Windows8开发(4):保存/读取本地应用程序设置
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 启动VS,打开“对象浏览器”,我们来找一个东西。在“对象浏览器”中找到Windows.Storage命名空间,并注意以下几个类。其中,我们要注意ApplicationData,看看它这名字,你也能猜到它是干哪行的。很明显,它一定与读写应用程序设置有关。嗯,猜得没错,A原创 2012-08-27 11:21:18 · 4516 阅读 · 0 评论 -
新时尚Windows8开发(3):应用程序状态
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 大家可能还记得,在WP开发中,我们曾讨论过应用程序状态。同样地,在Win8开发上,我们还可以适当地使用这玩意儿。上一节中,我们从应用程序周期中了解到,当我们的“板砖”应用程序不在前台运行时,就会被挂起。而这个挂起行为其实和WP中的差不多,在WP中,其实应用程序的当前状态并不是说每次被放原创 2012-08-22 15:21:21 · 5385 阅读 · 2 评论 -
新时尚Windows8开发(2):应用程序生命周期
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 创建Win8“板砖”应用后,我们不妨关注一下App类。在生成的代码中我们可以看到,主要处理了两个事件:一、重写OnLaunched方法;二、处理Suspending事件。App类的代码如下,这是项目模板生成的。namespace MyApp{ ///原创 2012-08-18 11:20:20 · 6565 阅读 · 1 评论 -
新时尚Windows8开发(1):如何创建应用程序项目
老周的博客专栏:http://blog.csdn.net/tcjiaan转载请注明原作者和出处。 一转眼的功夫,不知不觉也试用了Win8的好几个版本了,具体就不说了,自己装一个去玩玩就知道了,方式有二:1、双系统实机安装;二、虚拟机。对比地试了两下,明显,在实际机器上安装体验要比在虚拟机里面安装要好。鉴于正式版未发布(泄露版不算,我说的是合法的前提下),还是在现有硬盘中割几十G的空原创 2012-08-14 21:42:03 · 13850 阅读 · 18 评论