• WPF中的样式


    wpf中的资源和样式有很大关联

    wpf的窗口样式设计模式和web方式很一样。可以单独设置某个控件的样式,也可以设置一个公用的样式和htm中css方式很一样

    wpf中window和page两个图形界面,都可以设计独立公共样式
    在window中可以这样定义
    <Window.Resources>//资源。在资源中写样式style
            <Style TargetType="TextBlock">//就就是一个样式,相当于css中样式类。targettype是样式的作用对象。这里面省略了X:key相当于这个样式的ID。这样的话这个样式就应用到这个window中所有的textbloack控件了。
                <Setter Property="HorizontalAlignment" Value="Center"></Setter>///属性和value对应
                <Setter Property="FontFamily" Value="Comic Sans MS"/>
                <Setter Property="FontSize" Value="14"/>

            </Style>
        </Window.Resources>
    Page中也是同样的设置。只是将Window.Resources改为Page.Resources

    当然某个windows或page中设置的样式只能本窗口使用。
    但是也有个全局的应用程序级别的样式。那就是在App文件中设置  <Application.Resources>。这样的话其他页面和窗口都可以使用其中的样式

    样式的扩展或继承
    经常会有这个情况。你设置了某个公用样式。但是某些控件可能要在这个公用样式的基础上坐些不同的设置。最好的方法就是写一个新样式可以继承原来的老样式,然后添加一些新的属性。style的baseon属性提供了这个功能

    比如样式
    <Style x:Key="Style1"> <Setter Property="Control.Background" Value="Yellow"/> </Style>
    新的样式可以这样写:
    <Style x:Key="Style2" BasedOn="{StaticResource Style1}"> <Setter Property="Control.Foreground" Value="Blue"/> </Style>
    你们style2就是背景为yellow,前景为blue的样式了。
    basedOn用法比较简单,BasedOn="{StaticResource Style1}"//指定以前样式的x:key就可以。但是前面举的例子么呀x:key属性,那就可以这样写:BasedOn="{StaticResource {x:Type TextBlock}}"

    也可以通过编程方式来设置样式,比如
    textblock1.Style = (Style)(this.Resources["TitleText"]);

    使用xaml方式使用样式

    Style="{StaticResource StyleName}"





    本文使用Blog_Backup未注册版本导出,请到soft.pt42.com注册。

  • 相关阅读:
    【硬件】交换机与路由器概述
    【网络】IP地址,子网掩码,网段表示法,默认网关,DNS服务器详解
    【网络】网桥
    【归档】Mysql大表归档
    【锁】Innodb锁
    【磁盘】顺序IO比随机IO快
    【硬盘】RAID卡
    【基础】占用空间大小(数据页、线程)
    【SQL】ON DUPLICATE KEY UPDATE
    【基础】Hint控制语句执行
  • 原文地址:https://www.cnblogs.com/zjypp/p/2319384.html
Copyright © 2020-2023  润新知