开发前准备:

Windows 8 RTM MSDN订阅用户下载地址:

https://msdn.microsoft.com/zh-cn/subscriptions/securedownloads/hh442898

Windows 8 RTM普通用户下载地址:

http://msdn.microsoft.com/en-US/windows/apps/br229516/

Visual Studio 2012 RTM中文版下载地址:

http://download.microsoft.com/download/B/0/F/B0F589ED-F1B7-478C-849A-02C8395D0995/VS2012_ULT_chs.iso

Windows 8在线应用实验室:

http://msdn.microsoft.com/zh-cn/hh968278

创建App:

  【1】首先我们先来创建第一个Win8 App项目。Visual Studio 2012创建项目跟之前的版本一样,打开文件->新建->项目,在左侧选择Visual C#->Windows应用商店,这里演示的是建立一个“拆分布局应用程序”。

  

  点击F5运行程序,我们可以尝试运行一下VS定义的初始模板。

  【2】我们来看一下项目列表。

  Assets文件夹中包含的是模板默认的背景、Logo等图片资源。

  Common文件夹中预定义了一些类以及包含大量XAML资源的StandardStyle.xaml文件。StandardStyle中的资源很丰富,在分布式布局的模板中我们就可以看到其中大量使用到的资源样式及动画,有兴趣的同学可以将其中的样式一一试验,这也是尝试适应Windows 8-UI-Style的一个很好的途径,有助于以后开发出更优秀的Windows 8-UI-Style。

  DataModel文件夹中的SampleDataSource.cs定义了被创建模版的全部绑定数据。

  App.xaml定义了该项目的全局信息,和WP开发类似。

  ItemsPage.xaml是该项目启动时的第一个板块,即按F5启动后的首页。

  

  我们来看一下ItemsPage.xaml的代码面板。PageResources中定义了此页面中所有的数据集合,即将SampleDataSource.cs中的数据绑定到页面集合中来。首起的Grid布局类似WP中的LayoutRoot布局一样,为整个页面的根布局。GridView控件在当前App表现为主窗口时显示,形如左侧模拟器下方的色块集合,若当前App被用户停靠到左侧栏,GridView自动隐藏,同时原本Visibility属性为Collapsed的ListView出现,将当前App适应为停靠状态。ListView下的Grid控件显示为App左上角的Logo,返回标记的按钮在App前方还有页面堆积时显示,若当前为首页则自动隐藏,后方的Textblock默认绑定App Name。VisualStateManager为预定义的动画效果。

  Package.appxmanifest为清单设计器,开发者可以在清单设计器中很方便地修改App的一个或多个属性,如Tile、启动页面等等。

  SplitPage.xaml同之前的ItemsPage.xaml类似,是ItemsPage.xaml的下一级菜单,代码结构和前者类似。

  至此,我们对Win8应用的开发已经有了一个基本的认识,总体来说和WP的开发并无太多区别。下一篇我们将介绍如何利用上述的认识去开发一个简单的Win8应用。

  附:Visual Studio 2012夜景模式开启方法:工具->选项->常规->颜色主题,调成深色即可。

http://www.cnblogs.com/wulinfeng/archive/2012/09/11/2679444.html

Win 8 App开发框架解析的更多相关文章

  1. 吐槽坑爹的微软win store app审核

    从学习win store app 开发到做出第一个应用 博客园cnblogs 花了一个多月的全部业余和上班空闲时间, 上周在端午节放假期间终于完成了计划的全部开发和测试, 6月10号怀着无比激动的心情 ...

  2. Ionic – 强大的 HTML5 Mobile App 开发框架

    Ionic 是一个强大的 HTML5 应用程序开发框架,可以帮助您使用 Web 技术,比如 HTML.CSS 和 Javascript 构建接近原生体验的移动应用程序.Ionic 主要关注外观和体验, ...

  3. Reapp - 下一代的 Hybrid App 开发框架

    Reapp 与 React Native 有着惊人的相似之处,二者都使用 React 来创建应用程序用户界面的框架.然而,在底层机制上这两个框架之间却具有明显的哲学差异.React Native 将 ...

  4. 咏南WEB APP开发框架

    咏南WEB APP开发框架 咏南WEB桌面框架演示:47.106.93.126:9999 咏南WEB手机框架本地:47.106.93.126:8077 咏南CS框架下载:https://pan.bai ...

  5. 移动APP开发框架盘点

    移动APP开发框架盘点 总体概述 现在比较流行的移动APP开发框架有以下六种:网页.混合.渐进.原生.桥接.自绘.前三种体验与Web的体验相似,后三种与原生APP的体验相似.这六种框架形式,都有自己适 ...

  6. 用于HTML5移动开发的10大移动APP开发框架【转】

    今天给大家介绍10款有关HTML5移动开发APP开发框架,这几款框架都是比较优秀的移动 Web 开发框架,能够帮助开发者更加高效的开发移动Web应用.. 十款移动APP开发框架: 1.jquery m ...

  7. 基于Html5的移动端APP开发框架

    快速增长的APP应用软件市场,以及智能手机的普及,手机应用:Native(原生)APP快速占领了APP市场,成为了APP开发的主流,但其平台的不通用性,开发成本高,多版本开发等问题,一直困扰着专业AP ...

  8. 混合APP开发框架资料汇总

    Ionic(ionicframework)一款接近原生的Html5移动App开发框架 会html css js就可以开发app,Ionic基于angualrjs框架是一个专注于开发移动wap以及app ...

  9. 十款APP开发框架

    对于大部分Web开发人员,HTML.CSS和 Java是他们最熟练的开发技能.然而,开发一个原生的移动App,对他们来说却是完全陌生的领域.因为开发Android,iOS 或 Windows Phon ...

随机推荐

  1. win7+ubuntu双系统中卸载ubuntu方法

    双系统中,如果要卸载ubuntu是不能够直接卸载的,需要使用一些特殊的方法.下面就为大家详细的介绍介绍. Step1 MBR引导区修复: 进入win7,下载个软件MbrFix,放在C:\windows ...

  2. Shell脚本中cd命令使用

    在写shell脚本的时候发现cd切换目录的时候无法切换,代码是下面的. #!/bin/bash #changedir.sh history cd /home/firefox sleep pwd 我仔细 ...

  3. NYOJ 61传纸条(一) 双线程DP问题

    http://www.cnblogs.com/HpuAcmer/archive/2012/05/06/2486591.html 题目链接:http://acm.nyist.net/JudgeOnlin ...

  4. VMware的四种网络连接方式

    mkdir  /mn/cdrom mount /dev/cdrom /mnt/cdrom Bridge:这种方式最简单,直接将虚拟网卡桥接到一个物理网卡上面,和linux下一个网卡 绑定两个不同地址类 ...

  5. 【转】Solr5.3.1定时增量添加索引和重做索引

    本文转自:https://code.google.com/p/solr-dataimport-scheduler/ Solr Data Import Hander Scheduler 说明:Solr官 ...

  6. Linux UGO

    U=USER G=GROUP O=OTHERS 最前面的’-’,表示文件为普通类型 第一组的‘rw-’,表示文件属主对文件具有读和写权限,但没有执行权限 第二组的’rw-’,表示同组其他用户对文件具有 ...

  7. eclipse 切换svn账号

    1. 查看你的Eclipse中使用的是什么SVN Interface,位置在          windows > preference > Team > SVN 2. 如果是用的J ...

  8. Linux常用命令总结--分布式应用部署与监控

    1 kill所有相关进程ps -ef | grep -i 进程名 | grep -v "grep" | awk '{print $2}' |xargs kill 2 查询当前用户占 ...

  9. C++多线程下的单例模式

    一.懒汉模式:即第一次调用该类实例的时候才产生一个新的该类实例,并在以后仅返回此实例. 需要用锁,来保证其线程安全性:原因:多个线程可能进入判断是否已经存在实例的if语句,从而non thread s ...

  10. php截取指定字符串之间的字符串的类

    一个php截取指定字符串之间的字符串的类 <?php   class get_c_str {   var $str;   var $start_str;   var $end_str;   va ...