WPF中Style的使用(转载)
2012-04-06 20:22
369 查看
Styel在英文中解释为”样式“,在Web开发中,css为层叠样式表,自从.net3.0推出WPF以来,WPF也有样式一说,通过设置样式,使其WPF控件外观更加美化同时减少了大量的复杂属性的设置。
在WPF中,设置外观样式我们有很多种方式,比如通过设置控件的属性来控制控件的外观样式;或者通过在每一个控件中分别设置Style;或者通过在整个 Window.Resource中设置Style,又或者在App.xaml的Application.Resource设置Style。
在此我们就不讨论第一种方式设置控件的外观了,因为这不涉及到Style的使用。那么后三种设置样式来控制控件的外观有什么区别呢?那么我们来分别讨论吧!
第一,通过在每一个控件中分别设置Style来控制控件的外观,示例代码如下:
<Button Content="Button" Height="23" Name="button3" Width="75">
<Button.Style>
<Style TargetType="Button">
<Setter Property="Background" Value="Black" />
</Style>
</Button.Style>
</Button>
以上样式的设置只正对当前的Button有效,与其他同种类型的控件无关。
第二,通过在Window.Resource中设置Style来控制控件的外观,示例代码如下:
<Window.Resources>
<Style TargetType="Button">
<Setter Property="Background" Value="LightBlue" />
</Style>
</Window.Resources>
以上样式的设置,针对整个Window的所有Button有效(只要没有单独的对Button设置),这种方法呢,相对于第一种来说减少了代码量。同时修改起来出错的可能性较小!
第三,通过在App.xaml中的Application.Resource中设置Style来控制控件的外观,示例代码如下:
<Application.Resource>
<Style TargetType="Button">
<Setter Property="FontFamily" Value="MS Reference Sans Serif" />
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="SkyBlue" Offset="0.2"/>
<GradientStop Color="SkyBlue" Offset="0.8"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</Application.Resource>
以上样式的设置,针对整个Application的所有Button有效(只要在Window.Resource或者独立的Button中没有分别 设置),这种方法来设置控件的外观样式呢,相对于前两种来说,代码量有大幅的增加,同时呢,在一个应用程序中,往往同种类型的控件的很多属性都是相同的, 我们在Applicaiton.Resource进行全局设置,使其维护更加方便!
原文地址http://blog.csdn.net/lsc19890723/article/details/6857558
在WPF中,设置外观样式我们有很多种方式,比如通过设置控件的属性来控制控件的外观样式;或者通过在每一个控件中分别设置Style;或者通过在整个 Window.Resource中设置Style,又或者在App.xaml的Application.Resource设置Style。
在此我们就不讨论第一种方式设置控件的外观了,因为这不涉及到Style的使用。那么后三种设置样式来控制控件的外观有什么区别呢?那么我们来分别讨论吧!
第一,通过在每一个控件中分别设置Style来控制控件的外观,示例代码如下:
<Button Content="Button" Height="23" Name="button3" Width="75">
<Button.Style>
<Style TargetType="Button">
<Setter Property="Background" Value="Black" />
</Style>
</Button.Style>
</Button>
以上样式的设置只正对当前的Button有效,与其他同种类型的控件无关。
第二,通过在Window.Resource中设置Style来控制控件的外观,示例代码如下:
<Window.Resources>
<Style TargetType="Button">
<Setter Property="Background" Value="LightBlue" />
</Style>
</Window.Resources>
以上样式的设置,针对整个Window的所有Button有效(只要没有单独的对Button设置),这种方法呢,相对于第一种来说减少了代码量。同时修改起来出错的可能性较小!
第三,通过在App.xaml中的Application.Resource中设置Style来控制控件的外观,示例代码如下:
<Application.Resource>
<Style TargetType="Button">
<Setter Property="FontFamily" Value="MS Reference Sans Serif" />
<Setter Property="Background">
<Setter.Value>
<LinearGradientBrush StartPoint="0,0" EndPoint="0,1">
<GradientStop Color="White" Offset="0"/>
<GradientStop Color="SkyBlue" Offset="0.2"/>
<GradientStop Color="SkyBlue" Offset="0.8"/>
<GradientStop Color="White" Offset="1"/>
</LinearGradientBrush>
</Setter.Value>
</Setter>
</Style>
</Application.Resource>
以上样式的设置,针对整个Application的所有Button有效(只要在Window.Resource或者独立的Button中没有分别 设置),这种方法来设置控件的外观样式呢,相对于前两种来说,代码量有大幅的增加,同时呢,在一个应用程序中,往往同种类型的控件的很多属性都是相同的, 我们在Applicaiton.Resource进行全局设置,使其维护更加方便!
原文地址http://blog.csdn.net/lsc19890723/article/details/6857558
相关文章推荐
- WPF开发学习:资源在内外部定义的不同方式和怎么引用,Style样式的四种使用(对比CSS)
- WPF中使用Style设置界面控件外观属性
- 转载 [WPF][C#]在WPF中内嵌WindowsForm控件-使用WindowsFormsControlLibrary
- WPF中Style文件的引用——使用xaml代码或者C#代码动态加载
- WPF:在异步操作中使用CommandManager手动更新Command执行状态(转载)
- 转载 在WPF中使用Microsoft Chart Controls (MSchart)
- WPF中的模板(五)- 使用Style
- WPF中Style的使用
- WPF中使用流文档灵活地显示内容 (转载)
- WPF中Style的使用
- <转载>拒绝卡顿——在WPF中使用多线程更新UI
- WPF Style-ControlTemplate 使用
- 转载 wpf使用经验
- [转载]WPF – 使用触发器
- 【WPF】ContentControl Style定义与使用出现问题后 -- 引发的思考
- 修改UITableViewStyleGrouped形式的tableview的背景色 此博文包含图片 (2013-09-10 11:11:57)转载▼ 分类: IOS笔记 在使用UITable
- WPF学习笔记-使用自定义资源字典(style)文件
- [转载]DrawMe - 使用WPF/WCF创建的网络白板聊天程序
- WPF使用Log4net.dll库的demo(转载加个人观点)
- WPF style 样式的使用