在skin文件中.NET自带的各种控件是可以直接设置样式的,可是如果是自己开发的控件,能不能用skin来统一样式呢?
今天在部署项目的skin时候,发现了这个问题,使用了自定义的YYControl的smartgridview控件,把下面样式放到.skin文件中报错:“错误 1 未知的服务器标记“yyc:smartgridview”。”
这个控件实际上是继承了自带的GridView控件,所以其大部分默认属性都和GridView一样,可以在skin文件中定义样式。查了一下资料发现要是自己开发的用户控件,要想在skin中能够对某个属性定义样式,只需要在其属性前添加[Themeable(true)]即可。
如下面的样例:
这是一个用来刷新页面的一个自定义的ImageButton,其好处是刷新当前页,动作的触发是在客户端利用脚本来完成,不需要写任何程序代码: