设为首页 收藏本站
查看: 1341|回复: 0

Windows Phone 7的Panorama(全景视图)控件简介

[复制链接]

尚未签到

发表于 2015-5-9 13:54:11 | 显示全部楼层 |阅读模式
  本文简单介绍Panorama(全景视图)控件,通过本文的介绍可以对Panorama的使用和效果有个初步的认识。
  Panorama控件是Windows Phone 7中一个很特别的控件,它给用户提供一种很好的使用体验。
  Panorama控件通过使用一个超过屏幕宽度的长水平画布,提供了一种独特显示控件、数据和服务的方式。
  还是看图直观,上图:
http://i.msdn.microsoft.com/Ff941104.83abaa3d-63cc-4424-b8ff-3c5ceca759c4(en-us,VS.92).jpg
  上图这个长的画布就可以看作是一个全景视图,手机当前显示“all”这一部分,在屏幕上向左滑动手指,就可以切换到显示“what’s new”部分。
  整体结构
  那我们来看看Panorama的整体结构:
http://i.msdn.microsoft.com/Ff941104.dcf9d59c-4b25-49a0-a2ed-e1bca4a7b0b3(en-us,VS.92).png
  蓝色线部分是整个Panorama的宽度,红色线表示手机屏幕的宽度。屏幕的宽度比要显示的Content(内容)区域略宽,下一个Content区域的一部分会在当前位置显示出来,就像第一幅图中所示,在当前页面“all”中,会显示出它的后一个页面“what’s new”的左侧边界区域,在用户导航操作时,可以预览到下一个页面的一小部分内容,这样做使用户体验更好。
  页面结构
  整体结构了解了,我们来看看全景视图的页面结构:
  
  
http://i.msdn.microsoft.com/Ff941126.920f9636-d814-48c2-9d39-002c2f1b070d(en-us,VS.92).png
  Panorama由三个不同的Layer组成:Background、Title和Items。
  Background Layer
  整个全景视图的背景。
  通过Background属性,可以给Panorama控件设置背景,建议不要将其背景设置为null,至少设置个图片背景或单色背景
  Background是一个Brush类型的属性,可以通过三种画刷来设置:
  SolidColorBrush:使用一种纯色画刷设置Background
  ImageBrush:使用图片来做背景。
  GradientBrush:使用渐变画刷做背景
  注意:
  建议使用图片的高为800像素,宽度大于480像素,但是不要超过2000像素。高度不足800像素图片会被拉伸,超过2000像素图片将会被裁减。
  Panorama的背景图片,其Build Action属性一定要设置为Resource,否则在Panorama第一次显示时不会立刻显示出来。这是因为Build Action属性设置为Content导致资源的异步加载。在其它资源的使用中也应该注意到这点。
  Title Layer
  整个全景视图的标题,即图片中最大的文字“Panorama”(它太大了,没有完全显示出来)。
  不过需要注意的是,即使它显得很不协调,建议还是不要修改它的高度。我们可以理解为:这样做是为了保证所有应用程序中的全景视图其外观能够保持统一的风格。
  通过Panorama的HeaderTemplate属性,可以改变它的Tiltle,比如修改字体、颜色,甚至添加一些其它的控件。不过建议不要这样做,修改颜色还好,修改其它的会出现一些怪异的问题。但要注意Title的颜色要与背景协调。避免动态的改变Tiltle的大小,避免使用动画效果的Title。
  Items Layer
  包含全景视图中的所有Panorama Item的集合,也就是上图所示的绿色和蓝色框区域。
  建议在全景视图中最多不要加入超过4个Item。在Item中可以放置比屏幕宽度宽的控件,例如:放置一个Grid控件,将其宽度设置为800,是没问题的。
  很明显Item分为两个部分:
  Header
  绿色框区域是Panorama Item的标题。建议这个标题的名称不要过长(屏幕显示不下当然看着不爽)。
  Content
  蓝色框区域是Panorama Item的内容,我们要展示的控件就会放到这个区域当中了。
  
  对Panorama(全景视图)控件介绍就这么多了,以后会在写一篇Panorama(全景视图)控件开发初体验。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-65268-1-1.html 上篇帖子: Windows Phone 7(WP7)开发 显示长文本(高度大于2000px) 下篇帖子: Windows Phone 7 编程实践—捕获Map控件的DoubleTap事件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表