WPF Style样式设置

1.本window设置样式

在这里插入图片描述

<Window x:Class="WPF_Study.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WPF_Study"
        mc:Ignorable="d"
        Title="WPF入门" Height="600" Width="800">
    <!--Window 资源相关-->
    <Window.Resources>
        <!--Style 针对按钮类型 默认样式-->
        <Style TargetType="Button">
            <Setter Property="Background" Value="WhiteSmoke"/>
            <Setter Property="FontSize" Value="20"/>
            <Setter Property="Height" Value="40"/>
            <Setter Property="Width" Value="200"/>
            <Setter Property="Margin" Value="0,10, 20, 20"/>
        </Style>

        <!--Style 继承默认样式 定义特殊属性-->
        <Style x:Key="LoginStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
            <Setter Property="Background" Value="Green"/>
        </Style>

        <!--Style 继承默认样式 定义特殊属性-->
        <Style x:Key="QuitStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
            <Setter Property="Background" Value="Red"/>
        </Style>

    </Window.Resources>
    <Grid>
        <StackPanel>
            <!-- 设置单个按钮属性 背景色:Background 字体大小:FontSize 宽度:Width 高度:Height -->
            <Button Content="登录" Background="Gray" FontSize="20" Width="200" Height="40"/>

            <!-- 使用样式 LoginStyle -->
            <Button Style="{StaticResource LoginStyle}" Content="登录"/>

            <!-- 使用样式 QuitStyle -->
            <Button Style="{StaticResource QuitStyle}">
                <Button.Content>退出</Button.Content>
                <Button.FontSize>20</Button.FontSize>
            </Button>

            <!-- 使用默认样式 -->
            <Button Content="取消"/>

        </StackPanel>
    </Grid>
</Window>

2.全局样式设置

1.创建样式文件(BaseButtonStyle.xaml)

<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
                    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <!--Style 针对按钮类型 默认样式-->
    <Style TargetType="Button">
        <Setter Property="Background" Value="WhiteSmoke"/>
        <Setter Property="FontSize" Value="20"/>
        <Setter Property="Height" Value="40"/>
        <Setter Property="Width" Value="200"/>
        <Setter Property="Margin" Value="0,10, 20, 20"/>
    </Style>

    <!--Style 继承默认样式 定义特殊属性-->
    <Style x:Key="LoginStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
        <Setter Property="Background" Value="Green"/>
    </Style>

    <!--Style 继承默认样式 定义特殊属性-->
    <Style x:Key="QuitStyle" TargetType="Button" BasedOn="{StaticResource {x:Type Button}}">
        <Setter Property="Background" Value="Red"/>
    </Style>
</ResourceDictionary>

2.设置全局样式(修改App.xaml)

<Application x:Class="WPF_Study.App"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:local="clr-namespace:WPF_Study"
             StartupUri="MainWindow.xaml">
    <!--StartupUri="MainWindow.xaml" -->

    <!--设置全局样式  -->
    <Application.Resources>
        <ResourceDictionary>
            <ResourceDictionary.MergedDictionaries>
                <!-- 样式地址  -->
                <ResourceDictionary Source="/BaseButtonStyle.xaml"/>
            </ResourceDictionary.MergedDictionaries>
        </ResourceDictionary>     
    </Application.Resources>
</Application>


3.设置选择样式

<Window x:Class="WPF_Study.StyleWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WPF_Study"
        mc:Ignorable="d"
        Title="StyleWindow" Height="450" Width="800">

    <Grid>
        <StackPanel>
            <!-- 设置单个按钮属性 背景色:Background 字体大小:FontSize 宽度:Width 高度:Height -->
            <Button Content="登录" Background="Gray" FontSize="20" Width="200" Height="40"/>

            <!-- 使用样式 LoginStyle -->
            <Button Style="{StaticResource LoginStyle}" Content="登录"/>

            <!-- 使用样式 QuitStyle -->
            <Button Style="{StaticResource QuitStyle}">
                <Button.Content>退出</Button.Content>
                <Button.FontSize>20</Button.FontSize>
            </Button>

            <!-- 使用默认样式 -->
            <Button Content="取消"/>

        </StackPanel>
    </Grid>
</Window>

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/410208.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

论文阅读NAM:Normalization-based Attention Module

Abstarct 识别不太显著的特征是模型压缩的关键。然而&#xff0c;在革命性的注意力机制中却没有对其进行研究。在这项工作中&#xff0c;我们提出了一种新的基于归一化的注意力模块&#xff08;NAM&#xff09;&#xff0c;它抑制了不太显著的权重。它对注意力模块应用了权重稀…

YOLOV9论文概述

YOLOV9论文阅读 摘要信息瓶颈可逆函数可编程梯度信息 (PGI)辅助可逆分支多级辅助信息 GELAN实验设计参数设置实验结论消融实验模块深度辅助可逆分支和多层辅助信息PGI综合 可视化结果结论 摘要 今天的深度学习方法侧重于如何设计最合适的目标函数&#xff0c;以便模型的预测结果…

Seata分布式事务实战AT模式

目录 分布式事务简介 典型的分布式事务应用场景 两阶段提交协议(2PC) 2PC存在的问题 什么是Seata&#xff1f; Seata的三大角色 Seata AT模式的设计思路 一阶段 二阶段 Seata快速开始 Seata Server&#xff08;TC&#xff09;环境搭建 db存储模式Nacos(注册&配…

H5 个人引导页官网型源码

H5 个人引导页官网型源码 源码介绍&#xff1a;源码无后台、无数据库&#xff0c;H5自检测适应、无加密&#xff0c;直接修改可用。 源码含有多选项&#xff0c;多功能。可展示自己站点、团队站点。手机电脑双端。 下载地址&#xff1a; https://www.changyouzuhao.cn/1434.…

HTML+CSS+JS:轮播组件

效果演示 一个具有动画效果的卡片元素和一个注册表单&#xff0c;背景为渐变色&#xff0c;整体布局简洁美观。 Code <div class"card" style"--d:-1;"><div class"content"><div class"img"><img src"./i…

java接受命令行输入

在Java中&#xff0c;你可以使用​​Scanner​​类来接受命令行输入。以下是一个简单的例子&#xff0c;演示如何从命令行接受输入&#xff1a; import java.util.Scanner;public class CommandLineInputExample {public static void main(String[] args) {// 创建一个Scanner…

019 Spring Boot+Vue 电影院会员管理系统(源代码+数据库+文档)

部分代码地址&#xff1a; https://github.com/XinChennn/xc019-cinema 一、系统介绍 cinema项目是一套电影院会员管理系统&#xff0c;使用前后端分离架构开发包含管理员、会员管理、会员卡管理、电影票、消费记录、数据统计等模块 二、所用技术 后端技术栈&#xff1a; …

width:100%和width:auto有啥区别

项目中使用了with属性&#xff0c;突然好奇auto 和 100% 的区别&#xff0c;特地搜索实践总结了一下观点 一、 width属性介绍二、 代码带入三、 分析比较四、 总结 一、 width属性介绍 width 属性用于设置元素的宽度。width 默认设置内容区域的宽度&#xff0c;但如果 box-siz…

国创证券:迎政策助力,工业母机概念爆发,华中数控、宏德股份等涨停

工业母机概念26日盘中强势拉升&#xff0c;到发稿&#xff0c;华中数控、宏德股份“20cm”涨停&#xff0c;德恩精工、纽威数控涨超16%&#xff0c;科德数控、拓斯达等涨超10%&#xff0c;秦川机床、沈阳机床等亦涨停。 音讯面上&#xff0c;2月23日举行的中央财经委员会第四次…

C语言第三十一弹---自定义类型:结构体(下)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 目录 1、结构体内存对齐 1.1、为什么存在内存对齐? 1.2、修改默认对齐数 2、结构体传参 3、结构体实现位段 3.1、什么是位段 3.2、位段的内存分配 3.3、…

prime_series_level-1靶场详解

环境搭建 官网https://www.vulnhub.com/entry/prime-1,358/ 直接导入靶机 解题思路 arp-scan -l 确认靶机ip为192.168.236.136 也可以使用nmap扫网段 nmap -sn 192.168.236.0/24 使用nmap扫描靶机开放的端口 nmap -sS -T5 --min-rate 10000 192.168.236.136 -sC -p- &#xf…

BioVendor PEDF Human ELISA试剂盒

PEDF首先被发现是由人胎儿视网膜色素上皮细胞合成并释放到光感受器基质中的。它定位于人类染色体17p。PEDF是一种50 kDa多功能糖蛋白&#xff0c;属于丝氨酸蛋白酶抑制剂超基因(serpin)家族&#xff0c;作用类似丝氨酸蛋白酶的底物而不是抑制剂&#xff0c;也被描述为丝氨酸肽酶…

力扣模板题:回文链表

请牢记检测回文串的模板 /*** Definition for singly-linked list.* struct ListNode {* int val;* struct ListNode *next;* };*/ bool isPalindrome(struct ListNode* head) {int size0;struct ListNode* pointhead;while(point){size;pointpoint->next;}int arr…

遭遇DDOS攻击忍气吞声?立刻报警!首都网警重拳出击,犯罪分子无所遁形

遭遇DDOS攻击忍气吞声&#xff1f;立刻报警&#xff01;首都网警重拳出击 公元2024年2月24日18时许&#xff0c;笔者的个人网站突然遭遇不明身份者的DDOS攻击&#xff0c;且攻击流量已超过阿里云DDos基础防护的黑洞阈值&#xff0c;服务器的所有公网访问已被屏蔽&#xff0c;由…

高效项目计划的关键因素:制定前必须要考虑的事项

制定项目计划前需要考虑哪些因素&#xff1f;项目计划是一份重要的文件&#xff0c;它概述了项目的范围、目标、时间表、资源和预算。它作为项目团队和涉众的路线图&#xff0c;帮助每个人在整个项目生命周期中保持一致。在本文中我们将概述如何制定合理的项目计划。 1、定义项…

4.4 MySQL存储

目录 1、使用前提 2、使用连接数据库最初步骤 2.1 最初步骤 2.2 connect()方法中参数简单传递 3、创建数据库(创建架构)和创建表 3.1 创建数据库(创建架构) 3.2 创建表 3.2.1 基本创建 3.2.2 创建自增主键 4、Pycharm 可视化连接 MySQL 图形界面 5、插入、更新、查询…

centos升级g++.v6.1.0版本

1.下载源码包 wget http://ftp.gnu.org/gnu/gcc/gcc-6.1.0/gcc-6.1.0.tar.gz tar -zxvf gcc-6.1.0.tar.gz cd gcc-6.1.0 2.打开 download_prerequisites 脚本 vim contrib/download_prerequisites 可以看到该文件就是执行一些下载指令&#xff0c;需要下载几个包&#xff0c…

适合新手博主站长使用的免费响应式WordPress博客主题JianYue

这款JianYue主题之所以命名为 JianYue&#xff0c;意思就是简单而不简约的。是根据Blogs主题优化而成&#xff0c;剔除了一些不必要的功能及排版&#xff0c;仅保留一种博客布局&#xff0c;让新手站长能够快速手上WordPress。可以说这款主题比较适合新手博主站长使用&#xff…

数字化转型导师坚鹏:省级政府数字化转型案例研究

省级政府数字化转型案例研究 课程背景&#xff1a; 很多省级政府存在以下问题&#xff1a; 不清楚省级政府数字化转型的政务服务类成功案例 不清楚省级政府数字化转型的社会管理类成功案例 不清楚省级政府数字化转型的数字机关类成功案例 不清楚省级政府数字化转型的…

比创达元启新程 共创新佳绩:2023年度总结暨迎新年晚会圆满收官!

新的一年&#xff0c;万象更新。回顾2023年&#xff0c;我们携手走过的岁月&#xff0c;喜悦伴着汗水&#xff0c;成功伴着艰辛&#xff0c;遗憾激励奋斗。在过去的一年时间里&#xff0c;每个行业都经历着前所未有的变革与困难。我们比创达人也凭借着人心齐泰山移的团结之力&a…