【全面解禁!真正的Expression Blend实战开发技巧】第一章 真正的开发中的最佳的做法
原文:【全面解禁!真正的Expression Blend实战开发技巧】第一章 真正的开发中的最佳的做法
从设计者到开发者
设计师创建一个应用程序的布局然后让开发者去实现。
从开发者到设计者
开发者创建应用程序的函数功能部分,设计者完成样式部分。
使用规范的命名
规范的命名可以增加代码的可读性,可以根据创建该控件的目的来取名字。例如:tbCustomerId 一个用来显示客户ID的textblock;cnvToolbox 一个包裹button的canvas。
使用合适的控件类型
根据界面的需要,选择合适的控件。例如一排自定义样式的radiobutton与Gird组合,往往比tabcontrol更易用,效果更酷,你可以很容易的定义转场效果,动画。
将控件编组(group 或 canvas),并为编组命名
不要对静态的子元件命名,例如:一个用来做底纹的Path,一张背景图片,为他们取名字没有任何意义。将相关的对象分成一组,并给这个组一个名称。
样式的设计和重用
元素的风格应保持一致;在多个应用程序之间应使用资源字典重用样式;定义一些核心颜色和笔刷,应将其转换为本地资源,这样我们在样式里面使用它们时,只许修改一处,就可以改变所有该资源的引用。
匿名样式的使用好处
匿名样式可以缺省应用到所有未显示的设置样式的,同类型控件中。
例如:
<Style TargetType=”Button”>
<Setter Property=”Background” Value = “red”/>
</Style>
没有指定key属性的样式称为匿名样式,如果此时有一个button没有指定style,他将默认应用匿名样式,Background成红色。
谨慎选择使用位图还是失量图形(Path)
位图特点:下载量大,不能很好的缩放,占用的资源小,通过代码修改的难度大,可以使用任何位图工具处理,做动画前需要预先渲染。
矢量图形特点:下载量小,可以根据屏幕的大小改变尺寸,占用的资源高,通过代码修改很容易,仅限于在xaml 中使用,可以使用storyboard改变矢量图形形状.
多使用行为(Behaviors)
尽量重用样式
有可能的话,尽量使用隐式样式,他会节省你大量的重复代码。
【全面解禁!真正的Expression Blend实战开发技巧】第一章 真正的开发中的最佳的做法的更多相关文章
- 【全面解禁!真正的Expression Blend实战开发技巧】第十章 FluidMoveBehavior完全解析之三飞出ListBox吧
原文:[全面解禁!真正的Expression Blend实战开发技巧]第十章 FluidMoveBehavior完全解析之三飞出ListBox吧 刚才有人说我的标题很给力,哈哈.那这个标题肯定更给力了 ...
- 【全面解禁!真正的Expression Blend实战开发技巧】十一章 全面解析布局(Grid & Canvas &StackPanel &Wrappanel)
原文:[全面解禁!真正的Expression Blend实战开发技巧]十一章 全面解析布局(Grid & Canvas &StackPanel &Wrappanel) 写这篇文 ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第九章 FluidMoveBehavior完全解析之二平滑运动的滚动条
原文:[全面解禁!真正的Expression Blend实战开发技巧]第九章 FluidMoveBehavior完全解析之二平滑运动的滚动条 这一章讲解FluidMoveBehavior的另一个应用, ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第七章 MVVM初体验-在DataGrid行末添加按钮
原文:[全面解禁!真正的Expression Blend实战开发技巧]第七章 MVVM初体验-在DataGrid行末添加按钮 博客更新较慢,先向各位读者说声抱歉.这一节讲解的依然是开发中经常遇到的一种 ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第八章 FluidMoveBehavior完全解析之一漂浮移动
原文:[全面解禁!真正的Expression Blend实战开发技巧]第八章 FluidMoveBehavior完全解析之一漂浮移动 好久没更新博客了,今天如果没急事,准备连发三篇,完全讲解Blend ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第四章 从最常用ButtonStyle开始 - PathButton
原文:[全面解禁!真正的Expression Blend实战开发技巧]第四章 从最常用ButtonStyle开始 - PathButton 上一篇我们介绍了TextButton,但为了追求界面的张力, ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第五章 从最常用ButtonStyle开始 - ImageButton
原文:[全面解禁!真正的Expression Blend实战开发技巧]第五章 从最常用ButtonStyle开始 - ImageButton 本章围绕ImageButton深入讨论,为什么是Image ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第二章 你好,UI设计师
原文:[全面解禁!真正的Expression Blend实战开发技巧]第二章 你好,UI设计师 你好,UI设计师 曾几何时我从没想过要与艺术家打交道,但是Silverlight改变了这一切.UI设计师 ...
- 【全面解禁!真正的Expression Blend实战开发技巧】第三章 从最常用ButtonStyle开始 - TextButton
原文:[全面解禁!真正的Expression Blend实战开发技巧]第三章 从最常用ButtonStyle开始 - TextButton 在实际项目中,使用blend做的最多的一定是各种自定义But ...
随机推荐
- Nginx+uswgi+Django部署
详情参考: http://blog.csdn.net/a_little_snail/article/details/78045636
- [Vue] Use Vue.js Watchers to Respond to Async Updates
Use watchers to keep an eye on your data. Watchers are methods that are invoked when the specified a ...
- [Postgres] Create a Postgres Table
Learn how to create a table using the most widely-used data types (serial, varchar, integer, float, ...
- iOS 通讯录基础
iOS 6 之后应用訪问通讯录须要获得用户授权,而且仅仅授权一次,即使卸载了之后再安装.也不用再次授权. 开发通讯录应用须要两个框架: 1.ABAddressBook 主要用于提供訪问通讯录中 ...
- JDBC连接数据库步骤及Class.forName()(转)
JDBC连接数据库 JDBC是Sun公司制定的一个可以用Java语言连接数据库的技术. 一.JDBC基础知识 JDBC(Java DataBase Connectivity,java数据库连接)是一种 ...
- 使用lapack图书馆逆矩阵
阿土,直接在代码: #include <string> #include "lapacke.h" #include "lapack_aux.h" i ...
- 【codeforces 791B】Bear and Friendship Condition
[题目链接]:http://codeforces.com/contest/791/problem/B [题意] 给你m对朋友关系; 如果x-y是朋友,y-z是朋友 要求x-z也是朋友. 问你所给的图是 ...
- An HTTP & HTTP/2 client for Android and Java applications OkHttp
HTTP is the way modern applications network. It’s how we exchange data & media. Doing HTTP effic ...
- Android Studio 使用教程(二十五)之运行Android Studio工程
一.Android虚拟设备入口 上期我们使用了Android Studio创建了HeloWorld工程,要想运行该工程,首先需要一个Android虚拟设备来模拟Android程序的运行. 重新打开An ...
- 动态备份SQL-SERVER数据库——SQLDMO
转载:http://www.cnblogs.com/liulanglang/archive/2007/12/04/981812.html 上周要写一个SQL-SERVER数据库备份还原的程序,很没有思 ...