软件开发中为了使设计师和程序员“并行”工作并直接参与到程序的开发中来。

1、在网络程序开发团队中,草图设计后,设计师们可以使用HTML、CSS、JavaScript直接生成UI,程序员则在这个UI产生的同时实现它背后的功能逻辑。

2、而桌面开发WPF中,微软创造了一种新的开发语言XAML——可扩展应用程序标记语言。它在桌面开发及富媒体网络程序开发中扮演了HTML+CSS+javascript的角色,成为设计师和程序员之间沟通的枢纽。

现在,设计师和程序员们一起工作、共同维护软件的版本,只是他们使用的工具不同-——设计师们使用Blend(微软Expression设计工具套件中的一个)来设计UI,程序员则使用Visual Studio开发后台逻辑代码。

Blend使用起来很像Photoshop等设计工具,因此可以最大限度地发挥出设计师的特长。使用它,设计师不但可以制作出绚丽多彩的静态UI,还可以让UI包含动画。虽然程序员们也能做出这些东西,但从专业性、时间开销以及技术要求上显然是划不来的。更重要的是,这些绚丽的UI和动画都会以XAML的形式直接保存进项目,无需转化就可以直接编译,节省了大量的时间和成本。

3、Blend for Visual Studio 2013

Blend for Visual Studio一直以来都是WPF开发者的主要工具。长久以来,该软件一直作为从Visual Studio分离出来的独立产品来销售,属于Expression套件。从Visual Studio 2012开始,Blend for Visual Studio被发布为Visual Studio的附赠应用程序。令人遗憾的是,Blend for Visual Studio的第一次迭代就抛弃了XAML开发者,完全将重点放在使用HTML/JavaScript开发Windows 8应用程序的人们身上。

这个情况已成定局,而Blend for Visual Studio 2013现在重新为XAML开发者提供帮助。

后面的章节将详细介绍Blend for Visual Studio 2013的许多功能,下面是该工具的一些主要优点。

以紧凑的布局彻底控制UI。Blend for Visual Studio 2013的能力远超Visual Studio的XAML功能。虽然我不是UI设计师,但Blend for Visual Studio 2013能够使我的UI更加漂亮,而且速度比Visual Studio更快(不论是在设计方面还是在Visual Studio的XAML模式方面)。

可以轻松地向应用程序/页面添加动画、渐变效果和样式。

能够向页面(为更新布局)和状态记录快速添加状态。

能够通过许多布局和形状因素查看页面(该功能很像模拟器,但无法运行页面——WinJS/ HTML开发者仍旧能够因此受益)。

此外,Visual Studio和Blend for Visual Studio 2013还会使文件保持同步。如果你使用这两个工具同时打开了一个项目,当你在一个程序中更改(并保存了)应用/页面后,另一个程序会提示你重新加载该项目。你应确保保存了更改,因为在这两个程序中同时作出更改并且没有保存会导致并发问题。

在Blend for Visual Studio中打开项目

Visual Studio和Blend for Visual Studio可以非常好地协同工作。要在Blend for Visual Studio中打开项目,可右键WPF项目中的.sh文件,打开方式,并选择“Blend for Visual Studio 2013”选项,打开。

屏幕会显示如下画面

屏幕中会显示很多窗口,但至少都处于默认布局中(这非常像Visual Studio,你可以根据需要调整布局)。下面详细介绍这些布局元素。

“项目”、“资产”、“状态”和“设备”选项卡

该窗口的左上角有“项目”、“资产”、“状态”和“设备”选项卡,下面是这些选项卡的作用。

“项目”选项卡显示解决方案中的所有文件(非常像Visual Studio中的解决方案资源管理器)。其中没有特别重要的功能。

“资产”选项卡列出了可添加到页面中的所有资产。可以将之视为增强的Visual Studio工具箱。使用该选项卡除了可以向页面添加控件和面板外,还可以添加(和更改)样式、操作和媒体。

使用“状态”选项卡可以向页面添加视觉状态管理器XAML代码和视觉状态组。使用该选项卡还可以轻松为视觉状态添加过渡效果。

使用“设备”选项卡可以更改解决方案、方向和连接边界(后面几章将详细介绍这些内容)。使用该选项卡还可以更改主题(在明暗之间)和最小宽度。

对象和时间线

“对象和时间线”面板(左下角)含有文档大纲,使用该面板可以添加和修改故事板(与视觉状态管理器一同使用)。

页面设计器、标记和代码

工作区的中心区域是设计器和代码编辑器。与Visual Studio类似,可以使用拆分视图查看所有设计或标记。还可以将代码文件加载到中央窗格中。当你获得类似Intellisense的功能时,无法使用Visual Studio所有的强大功能,如导航和重构。此外,也不能使用已经安装到Visual Studio中的插件,如Telerik JustCode。

“属性”、“资源”和“数据”选项卡

工作区的右侧是“属性”、“资源”和“数据”选项卡,下面是它们的作用。

我曾经花了很多时间研究“属性”选项卡。除了“名称”“布局”等简单项目以及Width和Height等属性外,还含有大量在标记中难以手动设置的属性。使用“属性”面板可以设置“画笔”、“转换”和“交互”等选项。

“资源”选项卡含有所有应用程序和页面级资源,其中还有用于编辑和添加资源的选项。

使用“数据”选项卡可以设置页面的数据环境、创建样本数据和各种数据资源。使用该选项卡可以帮助你在设计时观察添加数据后的页面外观,而无需每次都不得不通过运行应用程序进行观察。

Blend for Visual Studio是一种功能极为强大的工具,若是详细介绍它的功能,就会占用整整一本书的篇幅。我在开发应用程序时会同时打开Visual Studio和Blend for Visual Studio,并且会根据需要完成的工作在这两个工具之间切换。去探索Blend for Visual Studio吧,找出最适合自己项目的功能。

Blend for Visual Studio 2013的更多相关文章

  1. 安装Visual Studio 2013 中文社区版

    Visual Studio 2013 免费了,我收到邮件后,立即从邮件的下载连接安装了 Visual Studio Community 2013 with Update 4 . 安装后几天没打开,今天 ...

  2. Visual Studio 2013 Ultimate因为CodeLens功能导致Microsoft.Alm.Shared.Remoting.RemoteContainer.dll高CPU占用率的折中解决方案

    1.为什么Microsoft.Alm.Shared.Remoting.RemoteContainer.dll的CPU占用率以及内存使用率会那么高? 在Visual Studio 2013 Ultima ...

  3. Visual Studio 2013 Preview 高清多图先睹为快

    Visual Studio 2013 Preview已经发布.大家可以下载试用了哦: 选项加载明显比之前版本要快很多.

  4. 让Visual Studio 2013为你自动生成XML反序列化的类

    Visual Sutdio 2013增加了许多新功能,其中很多都直接提高了对代码编辑的便利性.如: 1. 在代码编辑界面的右侧滚动条上显示不同颜色的标签,让开发人员可以对所编辑文档的修改.查找.定位情 ...

  5. Visual Studio 2013 Ultimate的可视化代码功能

    可视化和了解代码综合了如何使用visual studio可视化代码来帮助理解代码: 理解代码和代码之间的关系:(1)Code Map(2)Dependency Graphs 理解代码交互:Sequen ...

  6. Visual Studio 2013 Web开发

    cnbeta新闻:微软正式发布Visual Studio 2013 RTM版,微软还发布了Visual Studio 2013的最终版本..NET 4.5.1以及Team Foundation Ser ...

  7. [.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图

    [.net 面向对象程序设计深入](3)UML——在Visual Studio 2013/2015中设计UML活动图 1.活动图简介 定义:是阐明了业务用例实现的工作流程. 业务工作流程说明了业务为向 ...

  8. [.net 面向对象程序设计深入](2)UML——在Visual Studio 2013/2015中设计UML用例图

    [.net 面向对象程序设计深入](2)UML——在Visual Studio 2013/2015中设计UML用例图  1.用例图简介 定义:用例图主要用来描述“用户.需求.系统功能单元”之间的关系. ...

  9. [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图

    [.net 面向对象程序设计深入](1)UML——在Visual Studio 2013/2015中设计UML类图 1.UML简介 Unified Modeling Language (UML)又称统 ...

随机推荐

  1. ORACLE11g中毒恢复

    很不幸的,win2003server疏于管理,中毒了,清理了病毒以后.oracle也瘫痪了.上次备份还在一周前,这一周的数据咋办? 首先的想法,是另找一台机器,装个一模一样的oracle.再把被删的文 ...

  2. SVN版本控制业务流程详解

    http://blog.sina.com.cn/s/blog_56d8ea900100y9cf.html http://jingyan.baidu.com/article/fa4125acbf509e ...

  3. js cookie库

    顺手摘下来 /** * @desc 设置Cookie * @param {String} name * @param {String} value * @param {Number} expires ...

  4. MySQL使用伪列

    在查询数据库的时候,我们有时候需要对查询出来的数据加上序列,1,2,3,……n 例如:我们根据表的某个字段排序后,要对这些数据加上序列,这个时候序号常常不是我们建表时设置好的自增的主键id,怎么办呢? ...

  5. wavwrite注意事项

    前几天群里有人提出一个问题:MATLAB里,同样频率的信号写入/读取,为什么频率感觉不同? 测试code: fs = 2000; f0 = 20; t = 0:1/fs:1; subplot 211 ...

  6. 高度自适应的CSS

    /*高度自适应*/ .com_fill_height{ height:100%; overflow:hidden; } 高度自适应的样式代码,真的就这么简单吗...

  7. .net程序调试一:快速定位异常

    作为一个程序员,解BUG是我们工作中常做的工作,甚至可以说解决问题能力是一个人工作能力的重要体现.因为这体现了一个程序员的技术水平.技术深度.经验等等. 那么在我们解决BUG的过程中,定位问题是非常重 ...

  8. NEXYS 3开发板练手--USB UART(三)

    接着上一篇,今天我们来建立一个能用于实际工程中的DEMO. 首先,为了使我们的发送机不像上一个DEMO一样无节制的循环发送,我们需要修改代码,增加使发送机停止发送的控制部分,修改后的代码如下: `ti ...

  9. CCToggleVisibility和CCPlace

    CCActionInterval* move1 = CCMoveBy::create(, ccp(,)); CCActionInterval* move2 = CCMoveBy::create(, c ...

  10. <实战> 通过分析Heap Dump 来了解 Memory Leak ,Retained Heap,Shallow Heap

    引入: 最近在和别的团队的技术人员聊天,发现很多人对于堆的基本知识都不太熟悉,所以他们不能很好的检测出memory leak问题,这里就用一个专题来讲解如何通过分析heap dump文件来查找memo ...