关于详细的基本功就先说这么多。后面遇到再补充说明,前面说的都是一些代码和原理方面的东西。接下来说的会有界面和代码结合,会有成就感,由于能真正的做出东西来了。


Windows移动开发包含Windows Store和Windows Phone,Windows Store程序主要针对的是Surface,Windows Phone主要是Win8 Metro手机应用,这两个产品的开发模式基本类似。和Silverlight非常像,仅仅是Silverlight是执行在浏览器中,假设有Silverlight基础的Asp.Net程序猿去学习Windows移动开发时非常easy入门的。

开发Windows移动程序,建议使用的开发环境是,操作系统:Windows 8.x。IDE:Visual Studio 2012(或者更高版本号,简称VS2012)。数据库:Sql Lite。也经常使用XML或者Json文件存储少量信息。


安装VS2012的时候会提示用户安装Blend。Blend在移动开发中的地位好比站点开发中的Dreamweaver(简称DW),站点开发的前端project师使用DW设计页面。自己主动生成后台代码,Blend是图形化设计页面。通过拖拽控件能够自己主动生成前端UI页面。能够和VS2012共享一个解决方式。

例如以下图所看到的:


通过上图能够看出来,设计页面和Photoshop非常像,操作起来非常方便,可是这是给前端UI人员使用的。作为程序开发者,前期尽量少用这个开发工具,即使用也要了解透前端特定效果的后端代码实现原理。深刻了解代码原理才干高速准确的解决和优化问题。所以这个工具我也不多介绍了,一看就会用。

刚才说了Blend能够和VS共享一个解决方式。那么我们就通过VS打开刚才Blend创建的解决方式。例如以下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvamhxMDExMw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="">

      首先解释一下XAML代码。Page相当于Winform程序中的窗口。在Windows移动开发中都是用Page,Grid是一种布局方式,Grid中能够放各种控件,Grid布局是Windows移动开发中最经常使用的一种布局方式。当然Grid中还能够放Grid,很的灵活 。


看到上面的代码,感觉XAML代码非常像站点开发中的HTML代码。事实上XAML也是基于XML文件的,使用起来非常的强大,微软在Silverlight、WPF、Windows Store和Windows Phone开发中都採用XAML作为前端页面引擎,能够看出来XAML已经流行于站点、桌面以及移动端程序,这必定是以后的开发趋势,另外XAML还融合了各种样式的嵌套使用,不想站点开发中把样式技术独立为CSS,只是XAML也会把程序的样式单独封装到文件里便于使用。思想都是一样的。


在VS中也能够拖拽XAML控件。常见的XAML控件有TextBox、TextBlock、Button、Image、GridView、ListView、FlipView等。以后都会具体介绍这些控件的用法。今天就先认识一下XAML的代码以及基于XAML的开发模式,我们下期见。

Windows移动开发(五)——初始XAML的更多相关文章

  1. Windows Phone开发-开发环境和结构

    Windows Phone 7.1的开发工具发布了,一直对WP7很关注,现在终于可以开始学习了.其实09年就学习过silverlight,看过3的SDK文档,当时因为工作,断断续续也没有坚持下来,所以 ...

  2. Kinect for Windows SDK开发入门(15):进阶指引 下

    Kinect for Windows SDK开发入门(十五):进阶指引 下 上一篇文章介绍了Kinect for Windows SDK进阶开发需要了解的一些内容,包括影像处理Coding4Fun K ...

  3. Windows Phone开发(37):动画之ColorAnimation

    原文:Windows Phone开发(37):动画之ColorAnimation 上一节中我们讨论了用double值进行动画处理,我们知道动画是有很多种的,今天,我向大家继续介绍一个动画类--Colo ...

  4. Windows Phone开发(16):样式和控件模板

    原文:Windows Phone开发(16):样式和控件模板 在前面资源一文中也提过样式,样式就如同我们做HTML页排版时常用到的CSS样式表,它是对于特定娄型的可视化元素,应该可以直接说是针对控件的 ...

  5. Silverlight for Windows Phone开发系列课程

    Silverlight for Windows Phone开发系列课程(1):Windows Phone平台概况         课程简介:本节开始介绍系列课程的概况,包括课程内容,先决条件,学习目的 ...

  6. windows原生开发之界面疑云

        windows桌面开发,界面始终是最大的困惑.我们对前端工具的要求,其实只有窗体设计器.消息映射,过分点的话自适应屏幕.模型绑定.能够免于手工书写,其实这个问题并不复杂,但VS不实现.QT语法 ...

  7. Windows驱动开发(中间层)

    Windows驱动开发 一.前言 依据<Windows内核安全与驱动开发>及MSDN等网络质料进行学习开发. 二.初步环境 1.下载安装WDK7.1.0(WinDDK\7600.16385 ...

  8. Windows Phone开发工具初体验【转载】

    Windows Phone开发工具在MIX 2010上火热登场了.Windows Mobile开发者们压抑许久的热情终于爆发出来,对于Windows Phone的华丽转身,开发者们褒贬不一,有人对Si ...

  9. Windows Phone开发(48):不可或缺的本地数据库

    原文:Windows Phone开发(48):不可或缺的本地数据库 也许WP7的时候,是想着让云服务露两手,故似乎并不支持本地数据库,所有数据都上传上"云"数据库中.不过呢,在SD ...

随机推荐

  1. Elasticsearch之CURL命令的DSL查询

    它是Domain Specific Language领域特定语言. https://www.elastic.co/guide/en/elasticsearch/reference/current/in ...

  2. SQL Server之纵表与横表互转

    1,纵表转横表 纵表结构 Table_A: 转换后的结构: 纵表转横表的SQL示例: SELECT  Name ,        SUM(CASE WHEN Course = N'语文' THEN G ...

  3. nodejs全局安装路径的位置

    一般nodejs安装在默认的C盘,如果不知道安装在哪里,可以打开控制面板-系统和安全-系统-高级配置中找到 所谓全局安装: 是指安装在node中node_module的根目录里,可以在电脑的任何位置调 ...

  4. Android 微信SDK图片分享(checkArgs fail, thumbData is invalid)

    微信官网给的Demo中.图片的分享例子他是这么描述的: String url = "http://pic2.nipic.com/20090506/1478953_125254084_2.jp ...

  5. Android的HttpUrlConnection类的GET和POST请求

    /** * get方法使用 */ private void httpGet() { new Thread() { @Override public void run() { //此处的LOGIN是请求 ...

  6. 【PostgreSQL-9.6.3】触发器实例

    1. 创建一个触发器,表中的行在任何时候被插入或更新时,当前用户名和时间也会被标记在该行中.并且它会检查雇员的姓名以及薪水. --创建测试表 CREATE TABLE emp ( empname te ...

  7. html table内容不随标题滚动

    <html><head></head><body> <div> <div id="demo" style=&quo ...

  8. 微信小程序video

    1.video是原生组件原生组件的层级是最高的,想要覆盖在video上,只能用cover-view 和 cover-image 组件,这2个可以无限嵌套.适用场景:给视频加标题: 2.检测video播 ...

  9. httpd-vhosts.conf

    ## VirtualHost example:# Almost any Apache directive may go into a VirtualHost container.# The first ...

  10. Ansible 利用playbook批量部署Nginx

    我这里直接部署的,环境已经搭建好,如果不知道的小伙伴可以看上一遍ansible搭建,都写好了,这里是根据前面环境部署的 192.168.30.21     ansible 192.168.30.25  ...