转:Silverlight样式写法
来自:http://hi.baidu.com/shop%B0%C9/blog/item/9d771ef4a7b8182dbc3109ca.html
Silverlight中的样式写法与普通的CSS有异曲同工之处,分为内联样式和全局样式。
内联样式是在XAML中定义控件样式,唯一不方便。eg:
<Button Width="200" Height="60" Background="Red"
Canvas.Top="90" Canvas.Left="30" Content="提 交"
FontFamily="微软雅黑"
FontSize="24"
FontWeight="Bold"
Foreground="Green"/>
<Button Width="200" Height="60" Background="Red"
Canvas.Top="90" Canvas.Left="260" Content="取 消"
FontFamily="微软雅黑"
FontSize="24"
FontWeight="Bold"
Foreground="Red"/>
</Canvas>
效果如下:
其中Button控件附加了一些样式属性,样式不可重用,页面XAML代码混乱等,这些缺点其实类似于在HTML中直接设置元素的样式。一种推荐的方式是应该使用全局的样式。
全局样式是在App.xaml中编辑样式,在其他XAML中调用的样式。将一下代码写到App.xaml中
<Style x:Key="button1" TargetType="Button">
<Setter Property="FontFamily" Value="微软雅黑"></Setter>
<Setter Property="FontSize" Value="24"></Setter>
<Setter Property="Foreground" Value="Green"></Setter>
<Setter Property="Background" Value="Red"></Setter>
</Style>
<Style x:Key="button2" TargetType="Button">
<Setter Property="FontFamily" Value="微软雅黑"></Setter>
<Setter Property="FontSize" Value="24"></Setter>
<Setter Property="Foreground" Value="Red"></Setter>
<Setter Property="Background" Value="Red"></Setter>
</Style>
</Application.Resources>
通过Style元素指定,需要设置唯一的一个Key,类似于CSS中的类名或者ASP.NET 2.0中Skin功能,并且通过TargetType指定该样式将使用在哪类控件上,每一个属性都用Setter来指定。在XAML中,通过StaticResource标记句法来指定具体的样式:
<Button Width="200" Height="60"
Canvas.Top="90" Canvas.Left="30" Content="提 交"
Style="{StaticResource button1}"/>
<Button Width="200" Height="60"
Canvas.Top="90" Canvas.Left="260" Content="取 消"
Style="{StaticResource button2}"/>
</Canvas>
其中的KEY可以理解为CSS中的ID(#),TargetType为样式赋予的类型是什么。相比较上面的XAML文件,现在代码已经干净多了,这使得我们可以只专注于应用程序的业务,而无需考虑它的外观(在Beta1中似乎有些属性设置后会报错)。运行后效果如下:
样式重写是指在定义全局样式后,仍可以在附加全局样式的控件上重新定义某些样式
如上面的示例中,我们在XAML中通过属性Foreground指定第一个按钮的前景色为蓝色:
<Button Width="200" Height="60"
Canvas.Top="90" Canvas.Left="30" Content="提 交"
Style="{StaticResource button1}"
Foreground="Blue"
/>
<Button Width="200" Height="60"
Canvas.Top="90" Canvas.Left="260" Content="取 消"
Style="{StaticResource button2}"/>
</Canvas>
尽管我们在全局样式中指定第一个按钮的前景色为绿色,通过内联样式重写后,它显示为蓝色:
转:Silverlight样式写法相关推荐
- Vue 中英文 组件 样式 写法
Vue 中英文 组件 样式 写法 Vue 项目国际化样式处理 一.全局(main.js)添加自定义指令: v-lang 会自动添加 语言对应的 class [中:zh,英:en] Vue.direct ...
- react 的样式写法
react 的样式写法 内联样式 const Home3 = function () {return (//这里第一个大括号表示要插入js语法了,第二个大括号表示对象的括号<div style ...
- html自定义横纵向滚动条,详解css3自定义滚动条样式写法
本文介绍了css3自定义滚动条样式写法,分享给大家,具体如下: 先简单介绍一下各个属性 ::-webkit-scrollbar :滚动条整体部分,其中的属性有width,height,backgrou ...
- html5中行内样式写法,react怎么写行内样式?
react怎么写行内样式?下面本篇文章给大家介绍一下react 行内样式几种写法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. react 行内样式几种写法 法一 这是评论列表组件 ...
- 复习微信小程序input组件和wxss样式写法。
Input组件 输入框组件(参考小程序文档)写的相当清楚.. <view><text>请输入第一个数字</text><input type='number'v ...
- Vue中动态绑定style样式写法
1. 动态绑定style样式注意点 通过短横杠(-)连接的属性名都要转为驼峰形式,例:font-size要变成fontSize: 如果直接写样式属性的值,需要用引号引起来,例:fontSize: '1 ...
- html5 去掉 li的样式,css li 去掉点的样式写法
li{ list-style: url("pre.gif") outside circle; } 直接变色 li{ color:#f00; } 关于这个list-style-typ ...
- html日历表样式写法,css+html实现简单的日历
这篇文章主要为大家详细介绍了由html.css.javascript结合实现的简单日历,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 web页面中很多地方都会用到日历显示,选择等,本文用html. ...
- 清除浮动的四种样式写法
/* 清除浮动1 */ /* 添加额外标签使用 */ .clear { clear: both; } /* 清除浮动样式2 */ .clearfix { overflow: auto; /* over ...
最新文章
- 一次I/O问题引发的P0重大故障[改版重推]
- 一文看完吴恩达最新演讲精髓,人工智能部署的三大挑战及解决方案
- linux查看所有用户 用户组的方法(修改用户组)
- execl中设置的格式无法实现
- 分享几个可供学习,休闲的网站
- is 与 as 数据类型的操作 0108
- VMware在RSA大会上的新发布
- Entity Resolution(实体解析)
- 8.性能之巅 洞悉系统、企业与云计算 --- 文件系统
- 小程序:微信小程序开发
- Bloom Filter的基本原理和变种
- YUV420及YUV422格式的采集存储方式
- android+流量防火墙,流量防火墙APP
- android小米手机变慢,小米手机出现变慢卡顿现象怎么办 教你如何让小米手机跑的更快的方法...
- Hive解决return code 3问题
- 图像增强(空间域)——灰度变换
- [ linux ] vim 编辑器的三种模式介绍
- python爬虫爬取王者荣耀官网全部英雄头像(源码分享)
- 陳三甲网络笔记:王力宏直播买课600多万,你能否年赚30万
- 看看成功例子 四款iPhone音乐APP应用赏析
热门文章
- FileDownloader 很棒的文件下载库
- POJ2594 Treasure Exploration[DAG的最小可相交路径覆盖]
- 课程导入导出中的知识点操作
- Java重写equals()和hashCode()
- 企业管理软件的需求描述方法
- javamail.providers not found
- 【跃迁之路】【578天】程序员高效学习方法论探索系列(实验阶段335-2018.09.06)...
- 关于zipfile解压出现的字符编码问题
- vue+elementUI项目的踩坑~~持续更新
- 浏览器默认标签样式总结及css初始化程序(转)