WP7开发第一课:WP7项目组织结构&简单登陆例子(其一)

  上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>

 

posted @ 2011-08-25 21:25  东子哥  阅读(3362)  评论(4编辑  收藏  举报