`
WPComming
  • 浏览: 57458 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Windows Phone开发(4):框架和页

 
阅读更多
在开如之前,我想更正一个小问题,之前我在第一篇文章中说,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镜像本地安装。
----------------------------------

上一篇文章中,我们了解了WP应用程序的生命周期和各个事件的触发情况,今天,我们一起来探讨一下框架和页面。
理论枯躁的东西就不讲了,MSDN上都有的,具体一点,我们随便新建一个WP应用程序项目,接着打开App.xaml.cs文件瞧瞧,看看里面有没有“新大陆”?

1、一个App类,从
Application派生,这跟Silverlight中是一样的,当然,如果你对Silerlight不熟悉也不要紧,我简单吹一下。
我想各位玩过C#的,不管怎么说也应该玩过Windows窗体应用程序吧,对,就是我们常说的WinForm项目,在WindowsForm项目里面,有一个Program.cs之类的文件,程序的入口点就在里面定义,在Main的最后,VS默认生成的代码中有这么一行:Application.Run(...);
所以,这个Application和那个Application的意义是一样,专门负责整个应用程序范围的各种事务的协调。
2、我们会注意到App里面有一个公共属性RootFrame,这就是主框架,一个WP应用程序只有一个主框架。





3、主框架下面是页,主框架中可以包含1个或N多个页面。
4、页面这个概念很好理解,就像我们平时看到的一个窗体,只不过在Silverlight里面叫页,所以,我们也可以联想起Web页面。在Android里面叫一个Activity,其实所指的东东是一样的,只是叫法不同罢了。下图所示为一个页。




好的,下面来看一下一个页面是如何构成的。
先来看看页面的XAML声明部分。


我们看到,每一个页面都是PhoneApplicationPage的子类,它是继承自Silverlight中的Page类。
因为程序是面向WP手机的,所以注意要使用PhoneApplicationPage而不是用Page类,这样可以避免出问题。Class属性就是我们这个页面类的类名。
d可以理解为是设计时的状态,d:DesignWidth="480"就是说这个宽度和高度只是在设计时有效,也就是我们在设计器中看到的大小,并不意味着真正运行起来是这个值,有可能会随着手机屏幕的不同而自动调整,所以我们不应该刻意地设置页面的宽度和高度,以免被固定了,不能自动调整。
mc是什么呢?从语义上翻译是,是标记兼容性相关的内容,其中我们看到一句:mc:Ignorable="d",正如上面所说,d:DesignWidth是设计时的,所以,Ignorable="d"就是告诉编译器在实际运行时,忽略设计时设置的值。
SupportedOrientations用于设置页面支持的方向,如果我们希望在手机屏幕被用户旋转后,程序能够自动跟着调整,就相应地修改该属性。
Orientation属性就是用来设置当前页面的默认方向,是纵向的还是横向的。
下面,一起来做个练习,把SupportedOrientations改为PortraitOrLandscape,再把Orientation改为除None以外的其它值,然后运行,把手机向不同方向旋转,看看怎么样?










这个大家多改改,多试几次就明白了,挺有意思的。
还有一个,shell:SystemTray.IsVisible="True"用于设置是否隐藏系统托盘,我们把它设置为True时,运行程序,把鼠标移到页面顶部点击一下,我们就会看到系统托盘了,如显示当前手机信号强度,电池剩余量等信息。


分享到:
评论

相关推荐

    深入浅出Windows Phone 8.1应用开发(Runtime框架)_源代码

    深入浅出Windows Phone 8.1应用开发(Runtime框架)_源代码

    Windows Phone游戏开发实战

    对游戏场景和游戏菜单、2D动画和纹理处理、精灵的矢量移动和控制、战斗和魔法系统、关卡设计和AI系统、音效处理和文本处理、游戏优化等这些在游戏开发中遇到的实际问题进行了详细的分析和解答,并对XNA主流框架和...

    Windows Phone 7开发入门(DOCX文件)

    这里介绍使用Silver Light开发第一个WindowsPhone7应用程序。 阅读本文前建议你有编程基础,并假设你已经从Microsoft App Hub网站上下载Windows Phone7开发工具。 我这里使用的是App Hub网站上下载的Microsoft ...

    Windows Phone 2.Launchers和Choosers框架

    Launchers和Choosers框架使Windows Phone应用程序可以为用户提供一些功能,比如拨打电话,发送电子邮件,选择图片等。 Windows Phone应用程序模型使每个应用程序的执行(包括内存隔离)以及文件存储相互隔离。 ...

    一起学Windows Phone7开发系列课程(9-15)

    Windows Phone7 是今年年初才推出的一个全新的移动平台,集成了微软Silverlight和XNA两大优势产品框架在里面,使这个平台与Windows mobile平台有了很大的区别,由于这种差别的存在,使应用开发也不同于以往的Windows ...

    一起学Windows Phone7开发系列课程(1-8)

    Windows Phone7 是今年年初才推出的一个全新的移动平台,集成了微软Silverlight和XNA两大优势产品框架在里面,使这个平台与Windows mobile平台有了很大的区别,由于这种差别的存在,使应用开发也不同于以往的Windows ...

    phone gap 移动开发框架

    phonegap 1.3 android,ios,bada,blackberry,symbian,webos,windows phone 框架,开发包。以及api 下载了我好久才下完

    Windows Phone 10. XNA 3D 模型浏览器

    在Windows Phone 7版本中,您不得不选择一个应用程序框架来开发您的应用程序或游戏。而Windows® Phone Mango中允许您同时使用两个编程框架,Silverlight应用程序中可以嵌入XNA模块,XNA应用程序中也可以嵌入...

    Windows Phone 7入门经典

    Windows Phone 7程序的开发得使用C#程序语言。存在两种框架(方式)可以开发Windows Phone程序,一种就Silver Light,另外一种是XNA Framework...这里介绍使用Silver Light开发第一个WindowsPhone7应用程序以及重多例子!

    使用XNA4.0在Windows Phone 7上开发3D游戏

    利用微软的C#+XNA4.0框架,你可以在Windows、XBox360、Windows Phone 7、Zune等平台上开发3D游戏。

    Newport:Newport 是一个基于 MVVM 的 Windows Phone 应用程序开发框架

    纽波特 从安装它Newport 是一个基于 MVVM 的 Windows Phone 和 Windows Store 应用程序开发框架。 纽波特目标: Windows Phone 7 Silverlight 应用程序Windows Phone 8 Silverlight 应用程序Windows Phone 通用应用...

    Xamarin+iOS移动开发实战源代码1-15,C#开发IOS、Android、Windows Phone和Mac应用

    Xamarin是一个跨平台开发框架,这一框架的特点是支持用C#开发IOS、Android、Windows Phone和Mac应用.Xamarin.iOS 还可使开发者使用 Objective-C 和 Xcode 中提供的相同 UI 控件来创建本机 iOS 应用程序

    [WP7开发书籍].(Windows.Phone.7.Game.Development).源代码

    配套原书是Windows Phone 7 Game Development,已经...书中着重讲述XNA框架和Silverlight开发技术在Windows Phone下创建游戏项目,使用实例演示Windows Phone 2D和3D游戏开发过程,是一本不可多得的移动应用开发书籍。

    Windows Phone 7高级编程 源码 (一)

    第1章 metro与windows phone 第2章 免费的visual studio 2010 和 expression blend 4 第3章 按照“红线准则”设计布局 第4章 添加运动效果 第5章 方向与覆盖组件 第6章 导航 第7章 应用程序平铺图标与通知 第8章 ...

    《Windows Phone 7高级编程》随书源代码(2)

    第1章 metro与windows phone 第2章 免费的visual studio 2010 和 expression blend 4 第3章 按照“红线准则”设计布局 第4章 添加运动效果 第5章 方向与覆盖组件 第6章 导航 第7章 应用程序平铺图标与通知 第8章 ...

    Windows Developer Power Tools

    本书是一本大全式的指南,讲解了170多个免费和开源编程工具、组件和框架,可以帮助您创建、测试和构建优秀的Windows软件,从Windows Forms和ASENET应用到Web服务。本书并非是简单的工具列表,它可以帮助您在每天所...

    HyBird混合开发模式-利用HTML5开发无线应用_Android-PhoneGap安装及调试

    PhoneGap是一个开源的开发框架 使用HTML CSS和JavaScript来构建跨平台的移动应用程序 它使开发者能够利用iPhone Android Palm Symbian Blackberry Windows Phone和Beda智能手机的核心功能 包括地理定位 加速器 联系...

    audio-recorder:Audio Recorder 是一个示例应用程序,演示了如何在 Windows Phone 8 设备中录制和播放音频。 示例涵盖了 XNA 音频 API 和 Windows 音频会话 API (WASAPI)

    该应用程序涵盖了 XNA 框架音频 API 和 Windows 音频会话 API (WASAPI)。 此示例应用程序托管在 GitHub 中: : 开发与: 适用于 Windows Phone 2012 的 Microsoft Visual Studio Express。 兼容: 视窗电话 8...

    4.[开源][安卓]cocos2d-x-3-框架源码

    cocos2d-x是一个开源的支持多平 台的2D游戏框架,使用C++开发,基于cocos2d-iphone,在MIT许可证下发布。主分支在GitHub上使用OpenGL ES 2.0渲染,而旧版gles11分支则使用OpenGL ES 1.1渲染。 支持iOS、Android、...

    windowsPhone开发(三)--导航原理分析

    这一篇文章就来将介绍WindowsPhone平台上导航功能。从Silverlight3开始,提供了内置的导航框架,可以比较轻松的在SilverlightPage之间进行切换,并且可以和浏览器的前进、后退按钮集成。在Silverlight3之前的版本,...

Global site tag (gtag.js) - Google Analytics