看着各位大虾出系列文章貌似挺好玩的,本人耍了2个月的Wpf,有点见解,希望各位看官笑纳。本系列第一章就先来点简单又有用的吧o(∩_∩)o 哈哈..

终于效果例如以下:

←点它

本人一直在做WPF算是第一次做silverlight,这样主要是为了可以在博客里更好的展示成品 。(特别鸣谢银光中国提供的免费silverlight空间)

1.整体思路


分析上面效果--button为一个发光的三角形在MouseOver和click的时候有响应的动画效果...

发光的三角形:由2个空心三角形构成,当中以下一层那个被增加了BlurEffect效果。

2.设计过程


打开blend,新建  silverlight应用程序+站点  (这些我就不浪费口水了)

首先我们来画一个等腰三角形的路径..怎样让它等腰呢?我们这里利用了一点几何常识....

看到左边工具栏里面的图形

我们先画一个矩形,然后再画一个矩形的内接圆(因为blend对图形绘制时的定位有吸附效果,所以非常easy画出内接圆)

然后用钢笔工具(P)连接3个切点,注意画的时候能够按住shift键来画,这点和PS一样能够让线保持在某几个角度范围,这样线就能够画的非常直

能够把圈圈和框框del了,剩下三角形,依据自己需求调好角度和边框粗细,颜色等。(调角度时按shift也有效果哦)

然后我们把画好的三角形再CtrlV、CtrlC复制一份出来,把上面一层的边框颜色改为白色,例如以下图(有必要说明一下,由于XAML为解释性语言,后面创建的控件会覆盖在前面创建的控件上,这就导致图层结构显示和PS刚好相反,例如以下图,以下的Path在上面一层图层)

然后我们为下层的三角加入Effect效果,点新建,选BlurEffect.

         

做好后例如以下图:

再重复调以下一层三角形的Effect.Radius和边框粗细和颜色,直到自己想要的效果

作为一个Button它有点太大了,我们用选择工具(V)在画布上框选,或在左边树状结构里选中两个Path调节到自己想要的尺寸。

然后把它两增加到一个Grid里面,方法例如以下图。或者也能够选中两个图形后用快捷键Ctrl+G。

然后右键Grid,构成控件...

我们选择Button确定。

然后我们就发现真的变成Button了也~

我们把Button.Content的内容清空

我们进入编辑Button的模版,选中Button点下图中Grid就可进入

结构例如以下

我们选Grid,把它的背景色设为随意一个颜色,然后把透明度调为0(假设不这样做的话,空心三角形的内部为空的部分响应不了鼠标事件)

作为一个Button当然要有MouseOver的效果咯。

我们点状态选项栏,选中MouseOver状态,把作为发光虚化的三角形的边框改为另外一个颜色,再加入Normal状态到MouseOver的过度为0.3秒,这样让变化有个过程。例如以下图

同理,我们加入Pressd状态的样式,这里我们把整个Grid向右略微移动一点,能够选中grid后用方向键→来调整,这样保证在一条水平线上。相同加入到其它随意状态的过度,例如以下图。

最后一步,按F5看一下你的成果吧~~!

源代码下载:http://files.cnblogs.com/tong-tong/SilverlightApplication1.rar


在做上面这个Demo的时候突然有个想法,实施了下,效果不错,就作为耐心看完本教程的朋友的奖励吧~~

因为silverlight中没有VisualBrush所以实现倒影略显繁琐....

相同附上源代码:http://files.cnblogs.com/tong-tong/SilverlightApplication1-%E5%89%AF%E6%9C%AC.rar

blend的更多相关文章

  1. Expression Blend创建自定义按钮

    在 Expression Blend 中,我们可以在美工板上绘制形状.路径和控件,然后修改其外观和行为,从而直观地设计应用程序.Button按钮也是Expression Blend最常用的控件之一,在 ...

  2. 3dmax导出到blend或者vs中

    使用3dmax将模型导成obj格式的时候,可以导出材质或者不导出. 1.如果不导出,则按下图不勾选导出材质和创建材质库选项.这样生成的obj是可以直接再blend或者vs中打开的. 2.如果导出,不仅 ...

  3. 用 Blend 给Windows Phone 应用创建 示例数据

    前言  创建 示例数据(Sample Data) 是提高程序开发效率的一个很有效方法,有了它,我们调UI的时候就不必每次都运行应用,然后在手机上观看页面效果了,配合 “AlignmentGrid.pn ...

  4. iOS 2D绘图 (Quartz2D)之路径(stroke,fill,clip,subpath,blend)

    像往常一样 这个系列的博客是跟着大神的脚步来的.按照往例 在此贴出原博客的出处: http://blog.csdn.net/hello_hwc?viewmode=list我对大神的崇拜之情 如滔滔江水 ...

  5. Blend 2015 教程 (一) 基础

    微软公司在Visual Studio 2015产品套件中作出了许多革命性的变更,包括.NET开源,.NET服务器端部分跨平台,推出向个人和小团队免费的社区版,移动应用开发部分跨平台支持,商店应用支持C ...

  6. Blend 2015 教程 (二) 样式

    前一篇讲述了如何在新Blend中完成一个简单的带数据绑定的界面小例子,本篇将讲述一下,把View层和Style层分开,并搭建Style层框架的方法,并进行细节样式修改. 1. 在解决方案资源管理器面板 ...

  7. Blend 2015 教程 (三) 模板

    前一篇讲述了一些基本样式的修改方法,并搭建了Style层的基本框架,本篇将进一步修改ListBox的样式. 1. 首先选中ListBox控件,在美工板导航栏中点击ListBox,选择 编辑其他模板-编 ...

  8. Blend 2015 教程 (四)控件模板

    前一篇讲述了修改ListBox样式的方法,本篇将修改性别显示区域的样式. 1. 选择ListBox控件,编辑ItemTemplate的当前项,选择CheckBox控件,在美工板导航栏中点击CheckB ...

  9. Atitit 混合叠加俩张图片的处理 图像处理解决方案 javafx blend

    Atitit 混合叠加俩张图片的处理 图像处理解决方案 javafx blend 1.1. Jhlabs 好像有了可以叠加算法,但是没有找到doc1 1.2. 自己算法叠加1 1.3. 使用javaf ...

  10. Atitit blend mode COLOR_DODGE 混合模式  “颜色减淡”模式

    Atitit blend mode COLOR_DODGE 混合模式  "颜色减淡"模式 1.1. 混合模式是图像处理技术中的一个技术名词1 1.2. 目录1 1.3. 颜色减淡C ...

随机推荐

  1. 查询mysql哪些表正在被锁状态

    1.查进程,主要是查找被锁表的那个进程的ID SHOW PROCESSLIST; 2.kill掉锁表的进程ID KILL   10866;//后面的数字即时进程的ID

  2. ajax动态加载的图标

    http://www.ajaxload.info/ 这个网站可以动态生成ajax加载样式的小图片,git格式,挺不错推荐给大家

  3. 通过 Spring RestTemplate 调用带请求体的 Delete 方法(Delete With Request Body)

    Spring 框架的RestTemplate 类定义了一些我们在通过 java 代码调用 Rest 服务时经常需要用到的方法,使得我们通过 java 调用 rest 服务时更加方便.简单.但是 Res ...

  4. vim的ex模式用法

    本文出自   http://blog.csdn.net/shuangde800 本文是在学习<使用vi编辑器, Lamb & Robbins编著>时在evernote写的其中一章笔 ...

  5. 微软C#版SQLHelper.cs类

    转载自:http://blog.csdn.net/fengqingtao2008/article/details/17399247 using System; using System.Data; u ...

  6. HTML&JS笔记(1)

    canvas基本绘图 <!DOCTYPE html> <html> <body> <meta charset="utf-8"> &l ...

  7. css 水平居中的办法

    <div style="width: 100%; text-align: center; margin: auto;"> <div style="dis ...

  8. 【书评】RHCSA/RHCE Red Hat Linux 认证学习指南(第6版)EX200 & EX300

    这次参加 CSDN 举办的读书活动,正赶上项目忙,看得也是断断续续,拖了2周了,才能来写这个书评. ========== 书评的分割线 ========== 首先,我会肯定的告诉你,不论你是一名专业的 ...

  9. 杭电 1711 Number Sequence

    Number Sequence Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) ...

  10. IOS 可靠性测试 iosMonkey

    UI AutoMonkey UI AUtoMonkey是一款非常简单的IOS压力测试工具.通过它,你可以向ios设备发送滑动.拖动.旋转.甚至锁屏和解锁指令.原文github地址:https://gi ...