ExpressionBlend教程:WPF Button自定义样式
2013-02-04 21:13
169 查看
是不是在WPF的项目中经常看到非常绚丽的按钮或者其它控件吧,现在就与大家分享一下这些东西是怎么来快速实现的,直接用XMAL写?傻瓜才会那么干!所以我们要用其它工具,当然也算是开发WPF的专业级工具。
开发工具:Expression Blend 4
Start:
打开Microsoft Expression Blend 4,新建项目,选择WPF应用程序,项目命名为“WPFStyleDemo”,.net Framerwork版本4.0
![](http://images.cnitblog.com/blog/422602/201302/04202934-23d0954dbfd64f779d3ca5f2cfc26fc6.png)
创建完项目后,直接在MainWindow界面中放置一个Button按钮并设置宽、高都为100
![](http://images.cnitblog.com/blog/422602/201302/04203439-50cccbdf7fde431396a2c54cd9d9e9c8.png)
在Button上右键--编辑模板--编辑副本
![](http://images.cnitblog.com/blog/422602/201302/04203626-63c106719b5443f5803a46125f127e67.png)
命名Style名称为“MyButtonStyle”
![](http://images.cnitblog.com/blog/422602/201302/04203816-376d6efb5ae845cfb3358ffb17fcb944.png)
在对象和时间线视图中选中“[ContentPresenter]”(显示Button中Content属性),右键--剪切,暂时先把它保存到系统内存中备用
![](http://images.cnitblog.com/blog/422602/201302/04204043-eac56134f71940baa5b29237c9467e80.png)
删除Chrome
![](http://images.cnitblog.com/blog/422602/201302/04204332-fd34ea8181994f059f42ed62946c23b8.png)
选中Template,双击工具条中的Grid将Grid加入其中,并把之前保存在内存中的ContentPresenter粘贴到Grid中
![](http://images.cnitblog.com/blog/422602/201302/04204501-78bf95112a5345f1b2fd40f5a8c5948d.png)
在Grid中加入椭圆形(Ellipse),注意Ellipse和ContentPresenter的层次,如果反了那么你就看不到右边Button的文本了
![](http://images.cnitblog.com/blog/422602/201302/04204910-c95e22a0b9e34ef6a14d84b540fc3735.png)
设置Ellipse的背景色(Demo中为节省时间仅改变这一属性) 用明显一点的 黑白渐变
![](http://images.cnitblog.com/blog/422602/201302/04204920-c66d44ac878b422a84423d29bac1ea20.png)
选中触发器,点击“+属性”
![](http://images.cnitblog.com/blog/422602/201302/04205724-a1923cdb1700449b8c916e4d4c2526f0.png)
修改激活时机目标元素IsMouseOver属性为True
![](http://images.cnitblog.com/blog/422602/201302/04205943-95bdba872ff04b2aa6588c99bc861ba1.png)
接着修改Ellipse的背景色为白黑渐变
![](http://images.cnitblog.com/blog/422602/201302/04210157-755898500692484993b39304afecae75.png)
点击导航中的[Button]回Button
![](http://images.cnitblog.com/blog/422602/201302/04210414-4dcc352d9f9340009cad114e90ad1bff.png)
F5执行看下效果(左边为初始Button,当鼠标移动到Button上后的效果为右图)
![](http://images.cnitblog.com/blog/422602/201302/04210627-8ac6cd118c904e02a2d2890afb6d362b.png)
![](http://images.cnitblog.com/blog/422602/201302/04210633-897fdfa9383944d5a459d3b4efb61f08.png)
End!
最后,如果对本文的内容有什么疑问的话欢迎提问。
希望本文对您有帮助。
【Demo下载位置 -----.net学习群--20010300--共享文件:WPFStyleDemo】
开发工具:Expression Blend 4
Start:
打开Microsoft Expression Blend 4,新建项目,选择WPF应用程序,项目命名为“WPFStyleDemo”,.net Framerwork版本4.0
![](http://images.cnitblog.com/blog/422602/201302/04202934-23d0954dbfd64f779d3ca5f2cfc26fc6.png)
创建完项目后,直接在MainWindow界面中放置一个Button按钮并设置宽、高都为100
![](http://images.cnitblog.com/blog/422602/201302/04203439-50cccbdf7fde431396a2c54cd9d9e9c8.png)
在Button上右键--编辑模板--编辑副本
![](http://images.cnitblog.com/blog/422602/201302/04203626-63c106719b5443f5803a46125f127e67.png)
命名Style名称为“MyButtonStyle”
![](http://images.cnitblog.com/blog/422602/201302/04203816-376d6efb5ae845cfb3358ffb17fcb944.png)
在对象和时间线视图中选中“[ContentPresenter]”(显示Button中Content属性),右键--剪切,暂时先把它保存到系统内存中备用
![](http://images.cnitblog.com/blog/422602/201302/04204043-eac56134f71940baa5b29237c9467e80.png)
删除Chrome
![](http://images.cnitblog.com/blog/422602/201302/04204332-fd34ea8181994f059f42ed62946c23b8.png)
选中Template,双击工具条中的Grid将Grid加入其中,并把之前保存在内存中的ContentPresenter粘贴到Grid中
![](http://images.cnitblog.com/blog/422602/201302/04204501-78bf95112a5345f1b2fd40f5a8c5948d.png)
在Grid中加入椭圆形(Ellipse),注意Ellipse和ContentPresenter的层次,如果反了那么你就看不到右边Button的文本了
![](http://images.cnitblog.com/blog/422602/201302/04204910-c95e22a0b9e34ef6a14d84b540fc3735.png)
设置Ellipse的背景色(Demo中为节省时间仅改变这一属性) 用明显一点的 黑白渐变
![](http://images.cnitblog.com/blog/422602/201302/04204920-c66d44ac878b422a84423d29bac1ea20.png)
选中触发器,点击“+属性”
![](http://images.cnitblog.com/blog/422602/201302/04205724-a1923cdb1700449b8c916e4d4c2526f0.png)
修改激活时机目标元素IsMouseOver属性为True
![](http://images.cnitblog.com/blog/422602/201302/04205943-95bdba872ff04b2aa6588c99bc861ba1.png)
接着修改Ellipse的背景色为白黑渐变
![](http://images.cnitblog.com/blog/422602/201302/04210157-755898500692484993b39304afecae75.png)
点击导航中的[Button]回Button
![](http://images.cnitblog.com/blog/422602/201302/04210414-4dcc352d9f9340009cad114e90ad1bff.png)
F5执行看下效果(左边为初始Button,当鼠标移动到Button上后的效果为右图)
![](http://images.cnitblog.com/blog/422602/201302/04210627-8ac6cd118c904e02a2d2890afb6d362b.png)
![](http://images.cnitblog.com/blog/422602/201302/04210633-897fdfa9383944d5a459d3b4efb61f08.png)
End!
最后,如果对本文的内容有什么疑问的话欢迎提问。
希望本文对您有帮助。
【Demo下载位置 -----.net学习群--20010300--共享文件:WPFStyleDemo】
相关文章推荐
- ExpressionBlend教程:WPF Button自定义样式
- 【WPF】右下角弹出自定义通知样式(Notification)——简单教程
- WPF自定义控件和样式之自定义按钮(Button)
- WPF:自定义控件之Button-自定义样式,共用样式
- WPF 中,动态创建Button,并使Button得样式按照自定义的Resource样式显示
- WPF ToggleButton自定义样式
- WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式
- WPF自定义Button样式(按钮长度随Content长度自适应)
- WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式
- WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式
- android自定义button样式
- GridView自定义分页样式(上一页,下一页,到第几页)(新手教程)
- Android 自定义Button按钮显示样式(正常、按下、获取焦点)
- WPF Button 样式 鼠标移入发光
- Android自定义Button按钮显示样式
- 关于在AndroidStudio中自定义Button的样式
- WPF 自定义TreeViewItem样式
- WPF自定义控件与样式(4)-CheckBox/RadioButton自定义样式
- WPF Control Hints - Button : 除了自定义Templet,怎么方便实现无边框的Button
- WPF自定义分页控件,样式自定义,简单易用