博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Silverlight自定义按钮模板
阅读量:6894 次
发布时间:2019-06-27

本文共 2156 字,大约阅读时间需要 7 分钟。

    最近在用Silverligh做一个网络文件管理程序,但用在设计界面的时候觉得Silverligh默认的button样式太大众化了,所以就产生了自己定义按钮样式的念头.在网络一找的确有很多这方面的文章,但都有一个问题就是只定义了按钮的默认状态的样式.对于mouseover等基本都没有的.还好后来在msdn里找到详细帮助描述.以下就详细讲述Silverligh中定义一个按钮各种状态的样式.

    在定义按钮模板前先看下需要的效果

通过上面的图需要给按钮制定4种状态:不可用,默认,鼠标移上去,鼠标点下.

    先定义不可用图层

可以根据你需要的颜色会制一个距形,把IsHitTestVisible设置成false

   定义默认状态的图层

和不可用图层一样缓制一个距形即可,当然当然自己的需要制定边框和填充颜色

   定义鼠标移上去效果

同样也是会制一个距形,只是填充上是一个色阶.

    最后就是定义鼠标按下去的效果

其实和鼠标移上去的一样,只是色阶颜色有差别

    不同状态的图层都已经制作完成,下面的工作就是在不同状态下对这几个图层进行设置.Silverligh提供VisualStateManager来定义控件在每种状态下效果制定.按钮分别提供了Disabled,Normal,MouseOver和Pressed.

Disabled

    第一个效果把控件里的内容设置一个秀明度为0.5,这样做的目的是让按钮中的图片看起来有点蒙的效果.

    第二个效果就是把不可用图层显示出来.

Normal

    把默认状态的图层显示出来

MouseOver

                                    

    显示鼠标移进效果

Pressed

    显示鼠标按下去效果

    看完以上代码相信很多朋友都应该明白,其实就是在不同状态下用运动效果来改变某个图层的显示情况来达到不同状态效果.

    下面是整个按钮模板的代码

转载地址:http://vhzdl.baihongyu.com/

你可能感兴趣的文章
option菜单个数变化
查看>>
Python 函数(可变参数)
查看>>
FFmpeg中HLS文件解析源码
查看>>
IPMI总结
查看>>
配置OWASP的ModSecurity规则
查看>>
laravel 5.1 单元测试 Cannot modify header information 错误
查看>>
周四作业
查看>>
golang 转换markdown文件为html
查看>>
hdu 3016 dp+线段树
查看>>
对象的类型转换
查看>>
maven 下载源码及 Javadoc
查看>>
MySQL优化三之MySQL配置
查看>>
Solidity oraclize query apikey加密
查看>>
flume学习(一)---flume总览
查看>>
c语言编译命令
查看>>
【Android UI设计与开发】8.顶部标题栏(一)ActionBar 奥义·详解
查看>>
cocos2d-x Schedule详解
查看>>
day12
查看>>
day33-2用java的jdbc修改数据库中表的内容
查看>>
scrollToItemAtIndexPath: atScrollPosition: animated:
查看>>