WPF+MVVM案例实战(十八)- 自定义字体图标按钮的封装与实现(ABD类)

文章目录

  • 1、案例效果
  • 1、按钮分类
  • 2、ABD类按钮实现描述
    • 1.文件创建与代码实现
    • 2、样式引用与控件封装
  • 3、按钮案例演示
    • 1、页面实现与文件创建
    • 2、运行效果如下
    • 3、总结
  • 4、源代码获取


1、案例效果

在这里插入图片描述

1、按钮分类

在WPF开发中,最常见的就是按钮的使用,这里我们总结以下大概的按钮种类,然后分别实现对应的按钮。

A【纯文字按钮】 只有文字,但是会根据根据操作改变颜色
B【纯图片按钮 】只有图片,但是会有图片旋转或者变色特效
C【文字图片按钮】图片在左,文字在右边,有部分特效
D【文字图片按钮】图片在右,文字在左边,有部分特效
E【文字图片按钮】图片在上,文字在下,有部分特效
F【文字图片按钮】图片在下,文字在上,有部分特效

2、ABD类按钮实现描述

上节内容我们已经实现了ABC类的按钮,这里我们先实现以下ABD类按钮,他其实与ABC类按钮是一样的,只是换了一下文本与图标的位置,那么很容易实现,我们将原来样式中 图标和文本互换一下位置即可,如下所示:

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ARM base instruction -- mneg

Multiply-Negate multiplies two register values, negates the product, and writes the result to the destination register. 乘法-求反,将两个寄存器值相乘,对乘积求反,并将结果写入目标寄存器。 32-bit variant Applies when sf 0…

【鸿蒙新闻】10月29日警用鸿蒙开发者大会在北京胜利召开,开启智慧应用新时代!

10月29日,在公安部科技信息化局、公安部装备财务局指导下,由公安部第一研究所主办,鼎桥通信技术有限公司、OpenHarmony生态委员会及公共安全专委会协办的警用鸿蒙开发者大会在北京胜利召开。会议以“拥抱警鸿创新生态 开启智慧应用新时代”为…

架构师备考-软件工程相关补充

软件开发生命周期 按照传统的软件生命周期方法学,可以把软件生命周期划分为软件定义、软件开发、软件运行与维护三个阶段。 软件定义:软件定义包括可行性研究和详细需求分析过程,任务是确定软件开发工程必须完成的目标。具体可分为问题定义、…

OpenGL入门003——使用Factory设计模式简化渲染流程

前面两节已经学会了如何使用opengl创建窗口并绘制三角形,我们可以看出有些步骤是固定的,而且都写在main.cpp,这一节我们将了解如何使用Factroy设计模型。将模型渲染逻辑封装在一个单独的类中,简化开发流程,且提高代码复…

音频中sample rate是什么意思?

‌sample rate‌在数字信号处理中,指的是‌采样频率‌,即每秒钟从连续信号中抽取的样本数量。采样频率越高,信号的还原度越高,但同时也会增加计算负担和存储需求‌。 实际应用场景 在音频处理中,设置合适的采样率可以…

分享一下面试中常用的10 个面试点全解析,面试成功的秘诀

大家好,我是一颗甜苞谷,今天分享一下面试中常用的10 个面试点全解析,助你面试中脱颖而出 问题1:微服务架构和传统架构有什么区别,现在市场上的微服务架构有哪些? 答:传统的单体架构可维护性、可读性低,维…

构建品牌影响力:知识库工具在市场营销中的创新应用

在当今这个信息爆炸的时代,品牌影响力成为了企业市场竞争力的核心要素。为了有效提升品牌影响力,企业不仅需要精准的市场定位和优质的产品服务,还需要借助高效、智能的知识库工具来优化其市场营销策略。本文将探讨知识库工具在市场营销中的创…

Python Matplotlib 子图绘制

Python 中的子图绘制 在数据可视化中,展示多个图表在同一个画布上是常见的需求,这样可以更直观地比较不同数据集之间的关系。Python 中的 Matplotlib 库为我们提供了强大的功能来实现这一点。在本篇文章中,我们将详细介绍如何使用 Matplotli…

探索设计模式:命令模式

探索设计模式:命令模式 🧐1. 概念🎯2. 作用📦3. 实现3.1 定义命令接口3.2 实现具体命令3.3 实现接收者3.4 实现调用者3.5 使用 💻4. 应用场景 命令模式(Command Pattern)就是一种行为型设计模式…

Python-创建并调用自定义文件中的模块/函数

背景:在Python编程中,我们常常需要创建自己的专属文件,以便帮助我们更高效,快捷地完成任务。那么在Python中我们怎么创建并调用自己文件中的模块/函数呢? 在Python中调用自定义文件,通常是指调用自己编写的Python模块…

springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38819)

刚解决Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38816)没几天,又来一个新的,真是哭笑不得啊。 springboot 修复 Spring Framework 特定条件下目录遍历漏洞(CVE-2024-38816)https://blog.csdn.ne…

AutoDIR: Automatic All-in-One Image Restoration with Latent Diffusion论文阅读笔记

AutoDIR: Automatic All-in-One Image Restoration with Latent Diffusion 论文阅读笔记 这是ECCV2024的论文,作者单位是是港中文和上海AI Lab 文章提出了一个叫AutoDIR的方法,包括两个关键阶段,一个是BIQA,基于vision-language…

CDN加速实战:使用七牛云CDN加速阿里云OSS资源访问

今天是双11搞活动,在阿里云1元注册了个域名,想着在学CDN,想使用CDN做个加速项目,但是阿里的要收费,上网查了下七牛云的不收费,想着将七牛云的CDN结合阿里的DNS做个访问加速,刚好看到了阿里的一个文章,照着改了改,实践成功了。 阿里文章:使用CDN加速OSS资源访问_对象…

MacBook 如何设置打开json格式文件的默认程序是vs code

首先右键选中文件,然后选中显示简介 然后选中打开方式 设置成vs code

HTML 基础标签——文本内容标签 <ul>、<ol>、<blockquote> 、<code> 等标签的用法详解

文章目录 1. 标题标签2. 段落标签3. 文本格式化标签4. 列表标签4.1 无序列表 `<ul>`4.2 有序列表 `<ol>`5. 引用标签5.1 块引用 `<blockquote>`5.2 行内引用 `<q>`5.3 作品引用 `<cite>`6. 代码和预格式文本标签6.1 代码标签 `<code>`6.2 …

git 删除远程不存在本地命令却能看到的分支

要删除远程不存在但本地却能看到的分支&#xff0c;你可以按照以下步骤操作&#xff1a; 删除本地分支&#xff1a; 如果你确定要删除的分支已经没有用处&#xff0c;可以使用以下命令来删除本地分支&#xff1a; git branch -d <branch-name>这里的 <branch-name>…

【Oracle APEX开发小技巧10】CSS样式控制交互式报表列宽和自动换行效果

在实际开发中使用交互式报表可能会出现某些字段的列宽过长&#xff0c;某些字段的列宽只有缩到一角的情况&#xff0c;那么如何解决这种情况呢&#xff1f;有没有方法可以控制交互式报表的列宽呢&#xff1f;下面就来介绍一下解决方法&#xff1a; 页设置-页-CSS-内嵌 输入如下…

Linux内核、线程、进程同步互斥方法及IPC方法的总结

前段实践在B站进行模拟面试时发现&#xff0c; 模拟面试第四期-已经拿到大厂OFFER的研究生大佬-LINUX卷到飞起 自己对Linux中的同步互斥方法&#xff0c;以及IPC方法&#xff0c;没有很好的理解和总结过。因此&#xff0c;本笔记将总结这部分内容。 内核线程进程机制原子操作、…

Automated Isotope Identification Algorithm UsingArtificial Neural Networks-论文阅读

Automated Isotope Identification Algorithm Using Artificial Neural Networks 使用人工神经网络的自动同位素识别算法 M.Kamuda, J. Stinnett, and C.J. Sullivan 摘要 需要开发一种算法,以确定包含多种放射性同位素混合物的大量低分辨率伽马射线光谱数据集中放射性同位素…

MybatisPlus - 核心功能

文章目录 1.MybatisPlus实现基本的CRUD快速开始常见注解常见配置 2.使用条件构建造器构建查询和更新语句条件构造器自定义SQLService接口 官网 MybatisPlus无侵入和方便快捷. MybatisPlus不仅仅可以简化单表操作&#xff0c;而且还对Mybatis的功能有很多的增强。可以让我们的开…