摘要: 很多时候,我们对用户的操作或输入做一定程度的限制,以避免发生不必要的异常或错误,因此,对一些特殊的类型,进行输入限制是很有必要的。通改变屏幕键盘的显示模式可以规范和告诉用户, 这里应该输入什么。要做到这些并不复杂,只要用到一个类就足矣—— InputScope,它有一个Names属性,包含InputScopeName列表,而InputScopeName的NameValue是一个枚举值,说到底,显示什么样的屏幕键盘就取决于该枚举值。非常多的内容,至少每个枚举项表示什么,就没有必要一一说明,大家参考SDK文档就可以了。上面是理论部分,是不是这么神呢,下面我们用实践来证明吧。启动你的VS,然后新建一 阅读全文
posted @ 2012-03-11 11:19 东邪独孤 阅读(266) 评论(0) 推荐(0)
摘要: 对“磁贴”的理解是一点也不抽象的,为什么呢?只要你愿意启动WP系统,无论你是在模拟器中还是在真机中,是的,桌面上那一块块像地板的玩意儿,就是磁贴了。(图:磁贴)在上图中,我们很直观地看到磁贴图块的“真”面目,呵呵,其实很明显,这个设计真的很有个性,老实说,WP刚推出的时候,很多人说它这个那个的,其实这些人只过是起起哄罢了。我是挺喜欢桌面上那一块块的图块的,这也是WP第一次给我留下的深刻印象,毕竟在安卓和IOS上,我们看到的都是传统手机的图标显示方式,而WP总让我觉得很有个性。好的,看完了整体的,我们来看看局部的,好吗?别小看这些正方形的图块,里面可是大有文章的哦。不信?一起去瞧瞧。磁贴的一个图 阅读全文
posted @ 2012-03-02 22:25 东邪独孤 阅读(432) 评论(0) 推荐(0)
摘要: WP控件大部分都可以从Silverlight中继承过来,这里我也只能拿一部分作演示,对于其它控件如何使用,可以参考SDK相关说明以及Silverlight SDK文档。一、RadioButton控件。这是一个单选控件,不用多解释,我们见得多了,N选1,控件是否被用户选中,由IsChecked属性标记。另外,要注意的一点是GroupName属性,它输入一个分组名,这个名由我们自己来取,目的也是为了分组,因为是单选,所以,一个容器中可能有N多个RadioButton控件或都有多组RadioButton控件,因此,组名就发挥了作用,也就是说,同一个组内的只能选一个,比如,有一个组A,A中包含3个Ra 阅读全文
posted @ 2012-02-27 22:04 东邪独孤 阅读(283) 评论(0) 推荐(0)
摘要: Windows Phone的控件有几个来源,和传统的桌面应用程序开发或Web开发一样,有默认提供的控件和第三方开者发布的控件。一般而言,如果不是过于复杂的界面布局,使用默认控件就足矣。相比之下,Android SDK中尽管提供了许多可视化控件,但你会发现,实际开发用到的并不多,而且很多控件完全只是摆设,既没有公开相应的操作方法也没有更多可用于开发者自行处理的监听器(这里我习惯翻译为监听器,在安卓里面没有像C#那样使用事件,而是new一个监听器,当然原理是相似的)。除了游戏开外,我们在WP上基本上是使用Silverlight,因此,WP的大部分控件都来自Silverlight(银光)。一、Tex 阅读全文
posted @ 2012-02-26 11:37 东邪独孤 阅读(272) 评论(0) 推荐(0)
摘要: 按照一般做法,刚学会如何导航,还是不够的,因为要知道,手机里面的每个页面,就如同Web页面一样,是无状态的。啥是无状态?如果我们玩过Web开发就明白了,当你在当前页面输入一些内容,然后退回到前一页面,再前进到该页面,就会发现,之前输入的内容可能会没了。再比如吧,你在页面A中进行了数据绑定,点击按钮后进行查询并把查询结果显示在表格中,然后你点击一个超链接,跳到D页面,然后你再从D页面退回A页面,你会发现,刚才查询的结果就不会显示了。这就是无状态,也就是说,在你导航离开当前页面后,当前页面不会保留任何操作相关的数据。在手机应用程序中同样如此,所以,在导航离开当前页面时保存状态信息,而在用户再次回到 阅读全文
posted @ 2012-02-24 22:01 东邪独孤 阅读(272) 评论(0) 推荐(0)
摘要: 前文用几个例子对导航做了简单介绍,在一般应用中,使用上一篇文章中说到的方法,其实也够用了,不过,为了能够处理一些特殊的情况,有几个小技巧还是有必要了解一下的。一、到底该不该设置“后退”操作?因为手机的硬件层就有一个“回退”按钮,按理说我们不需要在程序中再添加什么回退按钮之类的,不过,还是有必要看看如何手动加入回退功能。1、新建一个WP应用项目。2、除默认的主页外,新建一个页面Page2.xaml。3、在主页上放一个按钮,编写Click事件处理代码,导航到Page2。 private void button1_Click(object sender, RoutedEventArgs... 阅读全文
posted @ 2012-02-22 21:48 东邪独孤 阅读(290) 评论(0) 推荐(0)
摘要: 吹完了页面有关的话题,今天我们来聊一下页面之间是如何导航的,在更多情况下,我们的应用程序不会只有一个页面的,应该会有N个,就像我们做桌面应 用开发那样,我们一个应用程序中可能不止一个窗体(极简单的程序除外),我们要处理窗体之间的切换;同理地,在进行Web开发的时候,我们的Web应用程序可能也不止一个页面,我们要处理页面之间的切换。当然了,在我们的手机应用中,同样需要这种操作,我们称之为“导航”,作为开发者,我们全盘操控页面之间的切换,所以说,我们也当了App的“总舵主”。一、如何进行导航。进行页面导航的一种简单方法就是使用HyperlinkButton控件的NavigateUri属性来指定要导 阅读全文
posted @ 2012-02-21 22:06 东邪独孤 阅读(256) 评论(0) 推荐(0)
摘要: 俺们都知道,智能手机可以通过旋转手机来改变屏幕的显示方向,更多的时候,对于屏幕方向的改变,我们要做出相应的处理,例如,当手机屏幕方向从纵向变为横向时,可能要重新排列页面上的控件以适应显示区域的变化。前面我们讨论过,Silverlight for Windows Phone的页面布局有三个常用的布局控件,那么,当屏幕方向改变后,我们所做的对布局的更改基础上是基于这几个容器进行的操作。本文我将通过三个示例来分别说明。开始之前,先说一下PhoneApplicationPage类的OrientationChanged事件,该事件就是当屏幕的方向改变之后发生,我们从事件参数OrientationChan 阅读全文
posted @ 2012-02-19 21:07 东邪独孤 阅读(277) 评论(0) 推荐(0)
摘要: 为什么叫室内装修呢?呵呵,其实说的是布局,具体些嘛,就是在一个页面中,你如何去摆放你的控件,如何管理它们,你说,像不像我们刚搬进新住所,要“装修”一番?买一套什么样的茶几和杯具(我说的“杯具”指的是原意,不要理解错了),或者沙发什么的,该怎么放,摆在哪里好看,其实,我们做界面设计也是差不多这个道理。相信我们下过象棋就知道,棋盘上有横向的,纵向的很多网格线,而棋子就是参照这些网格线来放置的,对,在WP页面布局中我们把这样的布局称为网格布局,对应的控件为Grid。千万别小看这个Grid控件,它可是非常好用的,而且也比较灵活,对的,当我们创建一个新页面时,VS为我们生生的XAML中,正是使用了Gri 阅读全文
posted @ 2012-02-17 21:07 东邪独孤 阅读(304) 评论(1) 推荐(0)
摘要: 在开如之前,我想更正一个小问题,之前我在第一篇文章中说,Visual Studio Express for Windows Phone的中文版没有简体中文,那是因为我是在英文主页上下载的,语言选择列表中只有一个中文,但是繁体的,后来,我发现Windwos Phone SDK是有简体中文版的,顺便我也给出下载地址。http://www.microsoft.com/downloads/zh-cn/details.aspx?FamilyID=0a373422-6680-46a7-89e1-e9a468a14259可以在线安装,如果你的网速不给力的话,可以下载ISO镜像本地安装。----------- 阅读全文
posted @ 2012-02-16 09:17 东邪独孤 阅读(244) 评论(0) 推荐(0)