Expression Blend 的点滴(3)--Templating的妙用,制作自己的ScrollBar控件
原文:Expression Blend 的点滴(3)--Templating的妙用,制作自己的ScrollBar控件
在Blend中,有一个功能,Make into control---通过它可以方便的自定义各种个性化的控件,例如把图片,文本,或者几何形状等等变成Button控件。当然,不只是Button可以变,还有各种各样的控件,几乎包括了所以的基本控件,而它们的外观到底是什么样,那就取决于你的创造力了。今天,就继续练习下这个功能的使用,跟着我一起做吧,你会发现blend真的很棒,当然,开始的时候可能会觉得过程有些复杂,不过没关系,熟能生巧嘛~好了,开始吧。。。
首先在拖放出一个Grid布局控件,设置适当的长度和宽度,设置下背景色,并且分成5列:
这个就当作滚动条的主体,接着在左右两个顶端分别画上两个三角形,当然他们分别位于第一列和第五列。你可以自己画三角形,如果不擅长,就直接使用三角形的shape控件。
画出三角后,调正下大小和旋转角度后,放入相应的列中,接着再拖放一个矩形控件,改变下圆角,放入第三列:
基本的样子已经出来了,接下来几部都是比较关键的,需要在第二列和第四列拖放两个矩形,并设置背景色和Grid的背景色一样。这个两个矩形有什么用呢?如果你查看下基本scrollbar的模板,你会发现,scrollbar主要有五个能使得产生滚动事件的部件,这里以垂直滚动条为例:
所以,我们上面的三角分别对应smalldecrease,smallincrease.而矩形则对应两个Large,中间列的矩形对应Thumb。
接着,进入关键的一步,对各个列进行设置,把第一列,第二列,第三列,第五列设置为auto,第四列为任意宽度,如下图,注意红色标注的地方;
如果还不是很清楚,那我们查看下源码:
到目前,前期工作已经完成,于是我们开始变,Make into contrl-------
变成scrollbar:
确定后,编辑当前模板。
接着我们打开Pars选项卡:
在这里列出了scrollbar的所有部件,我们下面会用到,我们会把之前自己定义的三角形,矩形make into 相应的部件。
上图的操作就是将左边的三角形转换成SmallDecrease部件,其余的操作类似,就不一一列举了。
之后,你将看到如下的样子:
但是,还有一步需要注意,当你转换后,会自动跳入它们各自的模板编辑,我们把里面的ContentPresenter删除,因为我们不需要。
之前如果都正确的操作了,那么自定义的scrollbar模板已经做好了,接下来,我们来使用它。
我们拖放一个scrollviewer控件,然后编辑一个拷贝的模板。
然后编辑HorizontalScrollbar的模板,绑定到刚才我们自己做的模板:
这样就成功的使用了我们自己定义的scrollbar了,最后看看效果如何:
Expression Blend 的点滴(3)--Templating的妙用,制作自己的ScrollBar控件的更多相关文章
- Expression Blend 的点滴(4)--创建类似iPhone屏幕锁控件(下)
原文:Expression Blend 的点滴(4)--创建类似iPhone屏幕锁控件(下) 接着上篇... 接下去,将一步步演示如果创建当点击checkBox后,其中的按钮由左边滑动到右边,表示处于 ...
- Expression Blend 的点滴(4)--创建类似iPhone屏幕锁控件(上)
原文:Expression Blend 的点滴(4)--创建类似iPhone屏幕锁控件(上) 本篇文章,最终效果图: 当然,不只是一个UI而已,如果只是一张图片,那专业的设计师能做出更出色的效果.在 ...
- Expression Blend 的点滴(2)--利用可视化状态创建神奇翻转动画
原文:Expression Blend 的点滴(2)--利用可视化状态创建神奇翻转动画 首先,来看下实现后的效果: 关于VisulaState VisualState 指定控件处于特定状态时的外观.例 ...
- Expression Blend 的点滴(1)--ListBox华丽大变身
原文:Expression Blend 的点滴(1)--ListBox华丽大变身 最近,在园子里有不少朋友写了关于Blend的优秀并且实用的文章,在此,我先代表silverlight的爱好者感谢他们的 ...
- 零元学Expression Blend 4 - Chapter 3 熟悉操作第一步(制作一个猴子脸)
原文:零元学Expression Blend 4 - Chapter 3 熟悉操作第一步(制作一个猴子脸) 本篇内容会教你如何使用笔刷.钢笔.渐层以及透明度的调整,还有如何转化图层和路径,最重要的是要 ...
- Expression Blend创建自定义按钮
在 Expression Blend 中,我们可以在美工板上绘制形状.路径和控件,然后修改其外观和行为,从而直观地设计应用程序.Button按钮也是Expression Blend最常用的控件之一,在 ...
- Expression Blend制作自定义按钮(转)
来源:http://www.cnblogs.com/iChina/archive/2011/11/25/2262854.html Expression Blend制作自定义按钮 1.从Blend工具箱 ...
- Expression Blend 4 激活码
Expression Blend 4 激活码: 6WDDQ-K7D4F-GQGF4-2VYBJ-8K6MB
- WPF和Expression Blend开发实例:一个样式实现的数字输入框
原文:WPF和Expression Blend开发实例:一个样式实现的数字输入框 今天来一个比较奇淫技巧的手法,很少人用,同时也不推荐太过频繁的使用. 先上样式: <Style x:Key=&q ...
随机推荐
- 学习活动管理系统:LAMS
学习活动管理系统:LAMS 一.总结 基于java的cms 二.LAMS Learning Activity Management System,学习活动管理系统. 数字化学习已经具有完整的发展方法来 ...
- Relaxation step(Dijkstra's 最短路径算法)
翻译成中文就是"松弛",属于工程优化的范畴: Dijkstra 的单源最短路径算法,有一个重要的步奏,当访问到新的结点 u (加入到集合 S),然后遍历 u 的邻接顶点(Adj), ...
- node.js服务器核心http和文件读写
使用htpp给客服端的数据,把数据交给浏览器渲染.利用 http创建服务器,如客户端请求为:127.0.0.1:3000或127.0.0.1:3000/xxx.html时 ,判断www文件夹中,文件 ...
- 有关Canvas的一点小事--鼠标绘图
1. 如何根据鼠标位置获取canvas上对应位置的x,y. 2. canvas的图糊了,设置宽和高的方式不对. 3.鼠标绘图代码 之前听说过canvas这个元素,但是实际上并没有深入了解过.不过日 ...
- Python 极简教程(九)元组 tuple
元组(tuple)是 Python 中的一种序列.和列表类似,但是元组不可变. 也就是说元组一旦声明后,值就不能再改变.我们先来看看元组的样式: >>> t = () # 空元组 & ...
- amazeui学习笔记--css(基本样式3)--文字排版Typography
amazeui学习笔记--css(基本样式3)--文字排版Typography 一.总结 1.字体:amaze默认非 衬线字体(sans-serif) 2.引用块blockquote和定义列表:引用块 ...
- Js里面的arguments
了解这个对象之前先来认识一下javascript的一些功能: 其实Javascript并没有重载函数的功能,但是Arguments对象能够模拟重载.Javascrip中国每个函数都会有一个Argume ...
- python3 用递归方法列出所有目录与文件
python3 用递归方法列出所有目录与文件 # !/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wan import os ...
- Java基础学习总结(31)——Java思维导图
- cocos2D(一)----第一个cocos2D程序
简单介绍 我们这个专题要学习的是一款iOS平台的2D游戏引擎cocos2d.严格来说叫做cocos2d-iphone,由于cocos2d有非常多个版本号.我们学习的是iphone版本号的.既然是个游戏 ...