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

Windows phone 7之hello world

[复制链接]

尚未签到

发表于 2015-5-10 13:30:33 | 显示全部楼层 |阅读模式
  我安装的是Windows Phone 7.1SDK,另外安装了前几天新出的7.1.1更新(对初学者无所谓)。
  首先打开Microsoft Visual Studio 2010 Express for Windows Phone 7.1 – ENU,新建一个C#类型的windows phone项目,选择Windows Phone Application,项目名字为“HelloWorld”选择一个路径,选择OK,然后选择7.1类型的系统,OK,创建项目成功了。项目结构如下图
DSC0000.jpg
  可以看到,创建项目的同时会默认的创建一个结局方案,并将项目包含在解决方案之下,解决方案和项目名称是一样的(7.0版本默认不会创建解决方案)。下面对项目中的文件做一个说明:
  App.xaml / App.xaml.cs
  定义应用程序的入口点,初始化应用程序范围内的资源,,显示应用程序用户界面
  MainPage.xaml / MainPage.xaml.cs
定义应用程序中的程序页面(程序默认主页面,可以修改默认主页面,下面会说明如何修改)
  ApplicationIcon.png
  一种带有图标的图像文件(不能是gif格式),代表了手机应用程序列表中应用程序的图标
  Background.png
  一种带有图标的图像文件,代表了在开始页面上应用程序的图表
  SplashScreenImage.jpg
  这个图片会在应用程序启动时显示。
  Properties\AppManifest.xml
  一个生成应用程序包所必需的应用程序清单文件
  Properties\AssemblyInfo.cs
包含名称和版本的元数据,这些元数据将被嵌入到生成的程序集
  Properties\WMAppManifest.xml
一个包含与Windows Phone Silverlight应用程序相关的特定元数据的清单文件,且包含了用于Windows Phone的Silverlight所具有的特定功能,可以根据需要对此文件进行修改
  References folder
  一些库文件(集)的列表,程序集的引用会在此显示
  App.xaml / App.xaml.cs
  




   
   
   
   
        
        
   

  Launching方法在项目启动时触发,Closing在程序关闭时触发,Activated在程序激活时触发,Deactivated在项目挂起时触发(比如切换到其他程序界面)
  



using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Navigation;
using System.Windows.Shapes;
using Microsoft.Phone.Controls;
using Microsoft.Phone.Shell;
namespace HelloWorld
{
    public partial class App : Application
    {
        ///
        /// Provides easy access to the root frame of the Phone Application.
        ///
        /// The root frame of the Phone Application.
        public PhoneApplicationFrame RootFrame { get; private set; }
        ///
        /// Constructor for the Application object.
        ///
        public App()
        {
            // Global handler for uncaught exceptions.
            UnhandledException += Application_UnhandledException;
            // Standard Silverlight initialization
            InitializeComponent();
            // Phone-specific initialization
            InitializePhoneApplication();
            // Show graphics profiling information while debugging.
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // Display the current frame rate counters.
                Application.Current.Host.Settings.EnableFrameRateCounter = true;
                // Show the areas of the app that are being redrawn in each frame.
                //Application.Current.Host.Settings.EnableRedrawRegions = true;
                // Enable non-production analysis visualization mode,
                // which shows areas of a page that are handed off to GPU with a colored overlay.
                //Application.Current.Host.Settings.EnableCacheVisualization = true;
                // Disable the application idle detection by setting the UserIdleDetectionMode property of the
                // application's PhoneApplicationService object to Disabled.
                // Caution:- Use this under debug mode only. Application that disables user idle detection will continue to run
                // and consume battery power when the user is not using the phone.
                PhoneApplicationService.Current.UserIdleDetectionMode = IdleDetectionMode.Disabled;
            }
        }
        // Code to execute when the application is launching (eg, from Start)
        // This code will not execute when the application is reactivated
        private void Application_Launching(object sender, LaunchingEventArgs e)
        {
        }
        // Code to execute when the application is activated (brought to foreground)
        // This code will not execute when the application is first launched
        private void Application_Activated(object sender, ActivatedEventArgs e)
        {
        }
        // Code to execute when the application is deactivated (sent to background)
        // This code will not execute when the application is closing
        private void Application_Deactivated(object sender, DeactivatedEventArgs e)
        {
        }
        // Code to execute when the application is closing (eg, user hit Back)
        // This code will not execute when the application is deactivated
        private void Application_Closing(object sender, ClosingEventArgs e)
        {
        }
        // Code to execute if a navigation fails
        private void RootFrame_NavigationFailed(object sender, NavigationFailedEventArgs e)
        {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // A navigation has failed; break into the debugger
                System.Diagnostics.Debugger.Break();
            }
        }
        // Code to execute on Unhandled Exceptions
        private void Application_UnhandledException(object sender, ApplicationUnhandledExceptionEventArgs e)
        {
            if (System.Diagnostics.Debugger.IsAttached)
            {
                // An unhandled exception has occurred; break into the debugger
                System.Diagnostics.Debugger.Break();
            }
        }
        #region Phone application initialization
        // Avoid double-initialization
        private bool phoneApplicationInitialized = false;
        // Do not add any additional code to this method
        private void InitializePhoneApplication()
        {
            if (phoneApplicationInitialized)
                return;
            // Create the frame but don't set it as RootVisual yet; this allows the splash
            // screen to remain active until the application is ready to render.
            RootFrame = new PhoneApplicationFrame();
            RootFrame.Navigated += CompleteInitializePhoneApplication;
            // Handle navigation failures
            RootFrame.NavigationFailed += RootFrame_NavigationFailed;
            // Ensure we don't initialize again
            phoneApplicationInitialized = true;
        }
        // Do not add any additional code to this method
        private void CompleteInitializePhoneApplication(object sender, NavigationEventArgs e)
        {
            // Set the root visual to allow the application to render
            if (RootVisual != RootFrame)
                RootVisual = RootFrame;
            // Remove this handler since it is no longer needed
            RootFrame.Navigated -= CompleteInitializePhoneApplication;
        }
        #endregion
    }
}
  WMAppManifest.xml
  





  
    ApplicationIcon.png
   
      
      
      
      
      
      
      
      
      
      
      
      
      
      
   
   
      
   
   
      
        
          Background.png
          0
          HelloWorld
        
      
   
  

  ProductID是程序的唯一标示,Title是程序名,安装后显示的,另外DefaultTask是用来设置程序启动的主页面的默认为MainPage.xaml
  MainPage.xaml
  




   
   
        
            
            
        
        
        
            
            
        
        
        
   
   
   

  上述代码运行效果如下
  
DSC0001.jpg
  现在修改代MainPage中的代码
  
DSC0002.jpg
  再次运行,效果如下图所示
  
DSC0003.jpg
  好了,的内容就到此为止吧,高手不要嫌这篇文章太简单,必须要照顾初学者的
  我的新浪微博昵称是 “@马蔬菜”,希望大家多关注

运维网声明 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-65477-1-1.html 上篇帖子: MVVM模式在Windows Phone 7上的简单实现 下篇帖子: 万众"7"待 杰作登场--湖南微软Windows 7社区发布会
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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