摘要:
前面在讲述导航的知识,也讲了控件,也讲了资源,样式,模板,相信大家对UI部分的内容应该有了很直观的认识了。那么今天讲什么呢?不知道大家在练习导航的时候是否发现一个问题?当我们向页面传递一个参数的时候,是没问题的,但是,如果我们在XAML中使用这样的URI时,你敢保证它还能正常运行呢? /PageaTest.xaml?name=小强&age=100你发现,嘿,咋回事了?怎么报错了?不知道有没有去思考,为什么呢?好,先问你一句,你学过Web开发吗?或者说,了解HTML吗?如果你了解,好,你已经找到答案了。哈哈,对了,就是编码和转义的问题,“&”符号用在XAML中同样需要转义,但你一 阅读全文
posted @ 2012-07-24 20:35
songtzu
阅读(219)
评论(0)
推荐(0)
摘要:
变换不是一个好理解的概念,不是吓你,它涉及很多有关代数,几何,以及线性代数的知识。怎么?被我的话吓怕了?不用怕,尽管我们未必能够理解这些概念,只要我们知道怎么使用它们就是了。其实,变换就是平面上一种坐标变化,听起来很抽象,但,只要我把它说具体了,你就会觉得不抽象了。相信各位如果玩过Photoshop,或者其它的绘图软件,应该知道什么叫做旋转,什么叫做倾斜,什么叫做平移……是的,这些就是我们今天要聊的变换,好了,现在你是不是可以坐下来喝一杯珍珠奶茶来放松一下呢?哦,对了,珍珠奶茶尽量少喝哦。好,闲话少吹,开始今天的表演。一、TranslateTransform。这个应该算是最好理解了,就是平移嘛 阅读全文
posted @ 2012-07-24 20:34
songtzu
阅读(233)
评论(0)
推荐(0)
摘要:
三维效果也可以叫透视效果,所以,我干脆叫三维透视效果。理论知识少讲,直接用例开场吧,因为这个三维效果其实很简单,比上一节中的变换更省事,不信?一起来做一做练习吧。练习一:把对象沿Y轴旋转45度。默认情况下,旋转中心都是在中心位置上,如Y轴中心。而至于旋转的角度,哪个方向是正值,哪个方向是负值,嘿,你自己动手试一下就知道了,我相信你能理解的,不然,Hello Kitty嘲笑你的。好的,由于是第一个练习,我们先来说说X、Y、Z三个坐标轴到底在哪,X轴不用说了,就横着放的那个了,Y轴呢,当然是竖着的,那Z轴呢?你猜?知道这三个轴是互相垂直的,你会猜的,在哪?在图上看不到?为什么呢?是啊,Z轴正指向你 阅读全文
posted @ 2012-07-24 20:33
songtzu
阅读(196)
评论(0)
推荐(0)
摘要:
前面说的那么多控件都是“静态”的,都是“哑吧”的,今天,你有没有兴趣研究一下,既能“有声有色”又操作简单的控件吗?如果有,请随我来。MediaElement播放多媒体文件。首先,隆重介绍一下MediaElement,为什么要隆重呢?因为它简单,真的,你一定会玩的,但是,MediaElement功能强大,它可以播放音频和视频,只要支持的格式就行了。要设置播放的音频或视频文件,你只需要设置Source属性即可,它其实就是一个URI,如果要播放你项目中的媒体文件,你先要把媒体文件添加到你的项目中,把它的生成操作设置为资源,不用我说了,都会了吧。你一定会问,能播放网络的URI指向的媒体文件吗?呵,你试 阅读全文
posted @ 2012-07-24 20:32
songtzu
阅读(223)
评论(0)
推荐(0)
摘要:
其实我们今天要说的就是一个控件——InkPresenter,这个控件并不是十分强大,没办法和WPF中的InkCanvas相比,估计在实际开发中也很少可能会用到它,不过,我们还是来了解一下吧,毕竟用起来也不难。使用该控件没有什么技术含量,注意一下以下几点就是了:1、必须明确指定InkPresenter的宽度和高度,也就是不能使用自动值和Margin,不然不能收集墨迹,除非里面有子元素;2、要收集墨迹,要设置Clip属性;3、可以使用DrawingAttributes类设置墨迹的大小和颜色。该控件不能像WPF那样自动实现收集墨迹的功能,也就是说只能是我们自己写代码了。[html]view plai 阅读全文
posted @ 2012-07-24 20:31
songtzu
阅读(244)
评论(0)
推荐(0)
摘要:
这两个组件都属于选择器,而且它们也有很多相似的地方,最明显的上一点,它们都是用来选择图片。一、CameraCaptureTask选择器。它用于启动照相机,当你拍下照片后,自动把照的字节流返回给调用方应用程序。前文说过,启动器和选择的使用方法和步骤都是一样的。对于CameraCaptureTask组件也如此,不过注意的一点是,处理Completed事件时一定要记住,尽可能的使用页面类的Dispatcher.BeginInvoke方法,因为异步回调直接访问UI元素是不安全的,极有可能会引发异常,但我不是说绝对。[html]view plaincopyprint?<Grid><Gr 阅读全文
posted @ 2012-07-24 20:30
songtzu
阅读(201)
评论(0)
推荐(0)
摘要:
从今天开发始,我们又开始新的征程,接下来的课程我们要熟悉一下启动器和选择器,其实二者是一样的,没有根本的区别,启动器是有返回结果的,如打开搜索应用程序进行搜索,而选择器是有返回内容的,如选择一张照片。那么,启动器和选择器是啥玩意儿呢?其实我们可以很简单去理解,说白了,就是使用系自带的组件或应用程序。对的,就是这样,我说过,有时候很多概念只是名字上吓人罢了,实际用起来是非常简单的,比如这个启动器和选择器就是了。到底是不是很简单,实践一下就知道了,本系列教程叫“轻松入门”,既然称得上是轻松,痛苦的事情不会叫大家去做,而MS一向注重用户体验,不会让大家痛苦的。先来总结一下,使用启动器和选择器的方法是 阅读全文
posted @ 2012-07-24 20:30
songtzu
阅读(218)
评论(0)
推荐(0)
摘要:
本节我们通过一个简单的发送短信示例来演示一下如果配合使用PhoneNumberChooserTask和SmsComposeTask类。PhoneNumberChooserTask是选择器,它用于从你的电话簿里选择你要发送短信的电话号码;SmsComposeTask就是用来启动发送短信组件并显示发送窗口。注意,这些操作都在用户的操控之中,发送短信一定会显示可视化页面的,而且不会偷偷地在后台发送,因为Windows phone是以用户体验和安全为原则的,后台发送是不允许的,而且发送过程是由用户控制的,你可以选择取消或退出。SmsComposeTask类的To属性就是目标电话号码,Body就是你要发 阅读全文
posted @ 2012-07-24 20:29
songtzu
阅读(232)
评论(0)
推荐(0)
摘要:
启动器与选择器简单的地方在于,它们的使用方法几乎一模一样,从前面几节中,我相信大家基本上都知道如何使用它们了。这里还是哆嗦一下吧,使用启动器和选择器的步骤如下:1、实例化,new一个;2、准备各参数,对相关的属性赋值;3、Show;4、对于启动器,不需要这步,但选择器有返回数据,所以需要处理完成事件。本节再举两例子,启动器和选择器就可以完成了,然后我们下一节开始,探讨新的知识点。例一:媒体播放器。这是一个启动器,用起来更方便。主要属性有:Controls——要显示控制按钮,如暂集,停止等,它是一个带了Flags特性标记的枚举,所以可以多个值合并,如MediaPlaybackControls.P 阅读全文
posted @ 2012-07-24 20:28
songtzu
阅读(249)
评论(0)
推荐(0)
摘要:
从名字上就看出来,这个家伙就是打开浏览并浏览到指定页面。它有两个用途完全一样的属性:Uri属性是System.Uri类型,这是新写进的属性;URL是字符串类型,但如果使用该属性,会发出警告“已过时”,所以建议使用前者。下面这个例子,点击按钮后都是打开WEB浏览器并定位到文本框中输入的地址,但分别用了上面所说的两个属性,当程序运行后,你会发现其效果是一样的。[html]view plaincopyprint?<phone:PhoneApplicationPagex:Class="WebTask.MainPage"xmlns="http://schemas.mi 阅读全文
posted @ 2012-07-24 20:28
songtzu
阅读(213)
评论(0)
推荐(0)

浙公网安备 33010602011771号