在博客园混了这么久了,第一次写博客。本人标准的理工男,文笔不敢说一般,只能用还学过语文。勉强达意而已。见笑!!

由于本人能有有限,错误之处在所难免,望大牛们批评指正,共同进步。^_^!!!!!!!!!!!!!!!!!!!!!!

觉得此篇博文对你有用,欢迎阅读,同时欢迎喜欢拍砖的同学。哥们脑袋硬。

书归正传,由于第一次写博客、加上个人技术有限,只能简单把自己曾经用的一些技术在这里做下简单的纪录。作为一个攻城狮,那就先慢慢的攻城吧,总有一天要成为狮!!嘿嘿

制作圆角的按钮:

step by step:建立wpf项目工程,首先在窗体上画一个矩形,设置其Fill为no brush,RadiusX、RadiusY的值2(圆角效果),右键选中矩形,构成控件,如下图:

在控件类型中选中Button,修改名称为myBtnStyle,确定。下面就来制作button的样式,鼠标滑动,点击的各种效果。

在上图的触发器选项卡下面有以上的触发事件,下面分别设置IsDefaulted,IsMouseOver,IsPressed来设置Button的默认、鼠标滑过、按下的样式。

IsDefaulted:设置如上图,背景填充为绿色,边框为无样式。

其他触发选项如IsDefaulted一样,设置自己喜欢的颜色。

设置完成活按F5,运行,看下效果:

默认:

鼠标滑过:

点击样式:(运行点击没有虚线,截图就出现了,嘿嘿)

ok,一个简单的按钮的样式就写完了。

xaml代码如下:

 <Style x:Key="myBtnStyle" TargetType="{x:Type Button}">
 <Setter Property="Template">
 <Setter.Value>
 <ControlTemplate TargetType="{x:Type Button}">
 <Grid>
 <Grid.ColumnDefinitions>
 <ColumnDefinition x:Name="columnDefinition1" Width="0.982*"/>
 <ColumnDefinition x:Name="columnDefinition" Width="0.018*"/>
 </Grid.ColumnDefinitions>
 <Rectangle x:Name="rectangle" RadiusY="2" RadiusX="2" Stroke="{x:Null}" Fill="#FF0DAD5F" Grid.ColumnSpan="2"/>
 <ContentPresenter HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}" VerticalAlignment="{TemplateBinding VerticalContentAlignment}"/>
 </Grid>
 <ControlTemplate.Triggers>
 <Trigger Property="IsFocused" Value="True">
 <Setter Property="Stroke" TargetName="rectangle" Value="{x:Null}"/>
 <Setter Property="Fill" TargetName="rectangle" Value="#FF0EED80"/>
 </Trigger>
 <Trigger Property="IsDefaulted" Value="True">
 <Setter Property="Fill" TargetName="rectangle" Value="#FF0DAD5F"/>
 <Setter Property="Stroke" TargetName="rectangle" Value="{x:Null}"/>
 </Trigger>
 <Trigger Property="IsMouseOver" Value="True">
 <Setter Property="Stroke" TargetName="rectangle" Value="{x:Null}"/>
 <Setter Property="Fill" TargetName="rectangle" Value="#FF83D245"/>
 </Trigger>
 <Trigger Property="IsPressed" Value="True">
 <Setter Property="Stroke" TargetName="rectangle" Value="{x:Null}"/>
 <Setter Property="Fill" TargetName="rectangle" Value="#FF17D256"/>
 <Setter Property="Width" TargetName="columnDefinition" Value="Auto"/>
 <Setter Property="MinWidth" TargetName="columnDefinition" Value="0"/>
 <Setter Property="Width" TargetName="columnDefinition1" Value="*"/>
 </Trigger>
 <Trigger Property="IsEnabled" Value="False">
 <Setter Property="Stroke" TargetName="rectangle" Value="{x:Null}"/>
 <Setter Property="Fill" TargetName="rectangle" Value="{x:Null}"/>
 </Trigger>
 </ControlTemplate.Triggers>
 </ControlTemplate>
 </Setter.Value>
 </Setter>
 </Style>

就这样非常简单的Button样式就这样搞定了,第一次写,有点仓促,更有点无从下手,总算写了一篇了,哎,再接再厉吧!!!

Microsoft Expression Blend 4制作简单的按钮的更多相关文章

  1. 在Microsoft Expression Blend 2 中绘制圆角矩形按钮

    原文:在Microsoft Expression Blend 2 中绘制圆角矩形按钮 /* 声明:转载请保留此信息:http://www.BrawDraw.com, http://www.ZPXP.c ...

  2. 在Expression Blend中制作侧面为梯形的类棱柱体

    原文:在Expression Blend中制作侧面为梯形的类棱柱体 在上一篇"在WPF设计工具Blend2中制作立方体图片效果"( http://blog.csdn.net/joh ...

  3. WPF动画制作简单的按钮动画

    主界面的代码 <StackPanel ButtonBase.Click="Grid_Click"> <Button Content="逐渐变大缩小&qu ...

  4. Motion Paths in WPF 4 using Expression Blend 4

    原文 Motion Paths in WPF 4 using Expression Blend 4 Posted by: Pravinkumar Dabade , on 3/19/2011, in C ...

  5. Expression Blend制作自定义按钮(转)

    来源:http://www.cnblogs.com/iChina/archive/2011/11/25/2262854.html Expression Blend制作自定义按钮 1.从Blend工具箱 ...

  6. WPF学习笔记-用Expression Blend制作自定义按钮

    1.从Blend工具箱中添加一个Button,按住shift,将尺寸调整为125*125; 2.右键点击此按钮,选择Edit control parts(template)>Edit a cop ...

  7. Expression Blend创建自定义按钮

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

  8. 【全面解禁!真正的Expression Blend实战开发技巧】第七章 MVVM初体验-在DataGrid行末添加按钮

    原文:[全面解禁!真正的Expression Blend实战开发技巧]第七章 MVVM初体验-在DataGrid行末添加按钮 博客更新较慢,先向各位读者说声抱歉.这一节讲解的依然是开发中经常遇到的一种 ...

  9. 零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果

    原文:零元学Expression Blend 4 - Chapter 47 超简单!运用StackPanel配合OpacityMask做出倒影效果 有网友问我如何在Blend内制作出倒影效果 我提供了 ...

随机推荐

  1. ASP.NET MVC 4 让数据库自动迁移

    今天实际测试了下这个方法,可以保持数据库与实体类同步,同时不会出现数据库迁移的提示.但是只能更改实体类来改变数据库,而不能改数据库来改变实体类.所以这才是Code frist,如果通过改数据库表来改动 ...

  2. PHP用反撇号(`,也就是键盘上ESC键下面的那个,和~在同一个上面)执行外部命令

    例如: echo `whoami`; // 导出数据库,要导入的文件夹必须要有可写权限, -u -p之后的内容必须要紧挨着写 echo `mysqldump -h localhost -u$DbUse ...

  3. 关于修改Eclipse工作空间对应的文件夹名称之后的处理.

    把文件夹名字从"xhkong"变成"xhkong(maintenance5.6)"之后打开这个工作空间. 导入git仓库我发现了一个之前没有发现的小技巧. 导入 ...

  4. simple水平导航条

    话不多说,看代码: html部分 <body> <ul> <li><a href="#">Home</a></li ...

  5. 原生javascript焦点轮播图

    刚刚学会,写了一个轮播图效果,不过bug蛮多,请高手指点一下,谢谢 <!DOCTYPE html> <html> <head> <meta charset=& ...

  6. CSS3 box-flex属性和box-orient属性

    比较有意思的是虽然目前没有浏览器支持box-flex,box-orient属性,但CSS3问世以来,这两个属性却一直很火.2014年阿里校招第5题要求使用CSS3中的功能实现三个矩形的布局,总的宽度为 ...

  7. T-SQL 使用链接库向mysql导数据遇到的奇葩事件一

    mysql表结构有 主键 非自增 text longtext类型字段多个 步骤 1.在T-SQL 临时表中处理好所有需要的字段 2.执行openquery语句 字段顺序完全按照mysql字段顺序插入 ...

  8. Cocos2d-x优化中关于背景图片优化

    由于背景图片长时间在场景中保存,而且图片很多,我们可以对其进行一些优化.我们通过如下几个方面考虑优化:1.不要Alpha通道背景图片的特点是不需要透明的,所以纹理格式可以采用不带有Alpha通道格式, ...

  9. Objective-C(iOS)严格单例模式正确实现

    注:本文所有权归作者所有,转载请注明出处 当希望在一个应用程序中某个类的对象只能存在一个的时候就可以考虑用单例模式来实现,单例模式在C++中比较容易实现(只需把构造函数声明为private),而在Ob ...

  10. Android EditText不弹出输入法焦点问题的总结

    转自:http://mobile.51cto.com/aprogram-403138.htm 看一个manifest中Activity的配置,如果这个页面有EditText,并且我们想要进入这个页面的 ...