zoukankan      html  css  js  c++  java
  • WP7开发第一课:WP7项目组织结构&简单登陆例子(其一)

    源地址:http://www.cnblogs.com/zhangdongzi/archive/2011/08/25/2153775.html 

    上2篇文章已经说明了WP7的软件生命周期,当然我们可能记得不太清楚,没关系,时间能帮我们记住,只要在以后开过程中,多多接触,就行了,现在觉得做一般水平程序员不难,只要熟悉类库API就行了,熟能生巧,当然如果你要成为高级程序员,那就不只是熟悉API那么简单的了,好了,我们开发吧。

     一:准备好开发环境,win7+VS2010sp1+wp7 sdk7.1

    注释:操作系统是必须是WIN7的,当然XP上安装VS2010 Express for window phone 也是有的。可参考:http://www.iwp7.com/archives/3882

          我这里用的是WP7 SDK7.1RC版,最新的,增加了500多项新特性。下载地址是:http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=27153

          我用的是旗舰版本的VS2010,因为它自带了很多东西提供开发使用,不单是WP7支持,很遗憾的是我在安装VS2O10后再安装WP7 SDK 7.1RC 竟然报不能安装,它需要的是SP1支持,所以呢,我就更新了开发工具为VS2010SP1,大家也麻烦点吧。地址是:http://www.microsoft.com/download/en/details.aspx?id=23691

    介绍完开发工具后,我们就来开发吧,其实安装时需要很长时间的。

     二:File-->New Project,我们会看到许多项目模板,这里我们先选择第一项window phone application吧。

    1:window phone application:标准的单页面WP7应用程序。

    2:window phone Databound  application:多页面WP7应用程序。它提供了一个Title 和Summary --(标题栏、备注栏),然后在以LIST列表方式呈现出来.

    3:window phone class library :提供使用的类库,这是作为用户封装类库项5目使用的。

    4:Windows Phone Panorama Application:全景图的应用程序开发模板,针对屏幕比较小但要显示大内容的时用到,我们可以拖动画面来查看全部内容。

    5:Windows Phone Pivot Application:把Application 界面当成圆形转轮,在里面的父窗口都是以一个轴为中心点,不管用户怎么选择都会轮换切换。类似于Tab.

    6:其它的比如播放器使用的就不一一介绍了。

     三:认识项目。

    这里我们一一说明:

    1:App

    App.xaml:这里主要存放一些全局使用的资源,比如样式Style资源等。也定义了软件生命周期的各个事件,

    <shell:PhoneApplicationService
                Launching="Application_Launching" Closing="Application_Closing"
                Activated="Application_Activated" Deactivated="Application_Deactivated"/>

    App.xaml.cs:这里主要是软件生命周期中事件实现,已经保存全局变量或者数据等(比如:登陆用户账号,密码等),同时也包括了软件顶级容器:PhoneApplicationFrame

    以上可以看出App主要是保存或者是定义全局的地方,你写程序的时候可以考虑需要保存全局的。:

    2:MainPage

    MainPage.xaml:主要是定义软件的UI界面,是个“分部类”,是继承phone:PhoneApplicationPage  页面的。在这里我们一般是书写软件的UI,当然也可以保存Style资源,动画资源,但这个是局部的,在本界面有效。

    • xmlns 默认的空间,如果在UI里面控件没有前缀则代表它属于默认的名字空间。例如,mainPages 里面的Grid 标签。
    • xmlns:x代表专属的名字空间,比如一个控件里面有一个属性叫name 那么 x:name 则代表这个name 代表xaml的名字空间。
    • xmlns:phone 包含在Miscroft.phone 的引用DLL
    • xmlns:shell 包含在Miscroft.sell的引用DLL,此文件可以帮助我们管理就用的生命周期。
    • xmlns:d 呈现一些设计时的数据,而应用真正运行起来时会帮我们忽略掉这些运行时的数据,比如下文件的d:DesignWidth="480" d:DesignHeight="768"然后在如下的名字空间会忽略掉这些数据。
    • xmlns:mc 布局的兼容性,这里主要配合xmlns:d 使用,它包含Ignorable属性,可以在运行时忽略掉这些设计时的数据。

    MainPage.xaml.cs:这个内置类,与MainPage.xaml合并为一个类,这里主要是书写C#,VB代码的地方,以及处理事件,播放动画等等。

    3:ApplicationIcon.png(应用程序ICON),Background.png(程序ICon背景),SplashScreenImage.jpg(加载欢迎页面图)

    4:AppManifest.xml:

    应用列表,会打包并发布,文件作用是把我们需要布署和发布的所有文件列表列出来。

    5:AssemblyInfo.cs:程序集中包含的软件名称、语言版本以及公司信息等。
    6:WMAppManifest.xml:包含了Wp7 的一些特殊属性,定义可用能力,让它支持比如游戏服务、本地化、网络链接、浏览器等功能;  默认启动界面任务类;还可以定义应用程序的图片等.

    <Capabilities>
          <Capability Name="ID_CAP_GAMERSERVICES"/>
          <Capability Name="ID_CAP_IDENTITY_DEVICE"/>
          <Capability Name="ID_CAP_IDENTITY_USER"/>
          <Capability Name="ID_CAP_LOCATION"/>
          <Capability Name="ID_CAP_MEDIALIB"/>
          <Capability Name="ID_CAP_MICROPHONE"/>
          <Capability Name="ID_CAP_NETWORKING"/>
          <Capability Name="ID_CAP_PHONEDIALER"/>
          <Capability Name="ID_CAP_PUSH_NOTIFICATION"/>
          <Capability Name="ID_CAP_SENSORS"/>
          <Capability Name="ID_CAP_WEBBROWSERCOMPONENT"/>
          <Capability Name="ID_CAP_ISV_CAMERA"/>
          <Capability Name="ID_CAP_CONTACTS"/>
          <Capability Name="ID_CAP_APPOINTMENTS"/>
        </Capabilities>
        <Tasks>
          <DefaultTask  Name ="_default" NavigationPage="MainPage.xaml"/>
        </Tasks>
        <Tokens>
          <PrimaryToken TokenID="PhoneAppToken" TaskName="_default">
            <TemplateType5>
              <BackgroundImageURI IsRelative="true" IsResource="false">Background.png</BackgroundImageURI>
              <Count>0</Count>
              <Title>PhoneApp</Title>
            </TemplateType5>
          </PrimaryToken>
        </Tokens>
      </App>
    </Deployment>

  • 相关阅读:
    Openstack Paste.ini 文件详解
    Keystone controller.py & routers.py代码解析
    YARN源码分析(三)-----ResourceManager HA之应用状态存储与恢复
    YARN源码分析(四)-----Journalnode
    YARN源码分析(四)-----Journalnode
    YARN源码分析(四)-----Journalnode
    YARN源码学习(五)-----NN,DN,RM在Ganglia上的监控实现机理
    Confluence 6 配置一个 Confluence 环境
    Confluence 6 审查日志的对象
    Confluence 6 审查日志
  • 原文地址:https://www.cnblogs.com/linlf03/p/2246761.html
Copyright © 2011-2022 走看看