当前位置: 首页 > news >正文

WPF中如何设置自定义控件

1.圆角按钮的设置:

众所周知在WPF中自带有提示信息,当我问创建Button时,点击空格出现如下可选设置

 带有小扳手🔧图标为相应的属性,如果Button有CornerRadius(角半径)属性就能够直接设置Button实现圆角效果,可是没有;因此我们采取另一种方式,将Button放到一个带有CornerRadius(角半径)的容器内,Button的Height和Width与容器的Height和Width相同,不显示Button的边框,利用容器的边框显示,间接实现Button圆角的功能。代码如下:

<Window x:Class="Login_Pape.Window1"
        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:Login_Pape"
        mc:Ignorable="d"
        Title="Window1" Height="500" Width="800">

    <Border Height="100" Width="200" CornerRadius="25" BorderBrush="#49B7A3" Padding="0" BorderThickness="1" >
        <Button Height="100" Width="200" Background ="Transparent" BorderThickness="0"/>
    </Border>
</Window>

效果图:

2.圆形按钮

圆角按钮可以做的话,那么圆形按钮怎么做呢,其实也挺简单的只要按照圆角按钮的设置方式,只要能将包裹按钮的四个倒角加起来组成正方形就行了,

如下图所示圆的直径等于正方形的边长即可。倒角的半径理论上是等于正方形边长的一半,也就是元的半径。但在实际设置中只要设置成大于等于园的半径都是可以的。代码如下:

<Window x:Class="Login_Pape.Window1"
        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:Login_Pape"
        mc:Ignorable="d"
        Title="Window1" Height="500" Width="800">
    <StackPanel>
        
    <Border Height="100" Width="200" CornerRadius="25" BorderBrush="#49B7A3" Padding="0" BorderThickness="1" >
        <Button Height="100" Width="200" Background ="Transparent" BorderThickness="0"/>
    </Border>

    <Separator Height="50" BorderThickness ="1"></Separator>
        
    <Border Height="30" Width="30" CornerRadius="15" BorderBrush="#49B7A3" Padding="0" BorderThickness="1" >
        <Button Height="30" Width="30" Background ="Transparent" BorderThickness="0"/>
    </Border>

    </StackPanel>
</Window>

效果图:

说明:为方便和圆角按钮进行对比,我将两个按钮放置在一起,用分割线分开。

相关文章:

WPF中如何设置自定义控件

1.圆角按钮的设置&#xff1a; 众所周知在WPF中自带有提示信息&#xff0c;当我问创建Button时&#xff0c;点击空格出现如下可选设置 带有小扳手&#x1f527;图标为相应的属性&#xff0c;如果Button有CornerRadius&#xff08;角半径&#xff09;属性就能够直接设置Button实…...

【Leetcode每日一题】二分查找 - 寻找旋转排序数组中的最小值(难度⭐⭐)(22)

1. 题目解析 Leetcode链接&#xff1a;153. 寻找旋转排序数组中的最小值 这个题目乍一看很长很复杂&#xff0c;又是旋转数组又是最小值的 但是仔细想想&#xff0c;结合题目给的示例&#xff0c;不难看出可以用二分的方法来解决 核心在于找到给定数组里面的最小值 2. 算法原…...

QT C++实战:实现用户登录页面及多个界面跳转

主要思路 一个登录界面&#xff0c;以管理员Or普通用户登录管理员&#xff1a;一个管理员的操作界面&#xff0c;可以把数据录入到数据库中。有返回登陆按钮&#xff0c;可以选择重新登陆&#xff08;管理员Or普通用户普通用户&#xff1a;一个主界面&#xff0c;负责展示视频…...

我的世界游戏服务器平台推荐哪里找?

我的世界服务器可以在多个平台上租赁&#xff0c;以下是一些推荐的游戏服务器平台。 1.玩家可以通过互联网上的一些平台租用游戏服务器。其中&#xff0c;国内大厂平台有阿里云、腾讯云、华为云等。这些平台提供了丰富的服务器配置和带宽选择&#xff0c;玩家可以根据自己的需求…...

用于制作耳机壳的倒模专用UV树脂有什么特点?

制作耳机壳的UV树脂耳机壳UV胶具有以下特点&#xff1a; 快速固化&#xff1a;UV树脂可以在紫外线的照射下迅速固化&#xff0c;大大缩短了制作时间。高硬度与高耐磨性&#xff1a;UV树脂具有较高的硬度和耐磨性&#xff0c;能够提供良好的保护效果。透明度高&#xff1a;UV树…...

将c、c++变为python

1.编写cpp文件 #include "pycpp.h" #include <iostream>using namespace std;PyCpp::PyCpp(){}void PyCpp::sayHello(int a){cout << "Hello Python, I am C."<<a << endl; }2.编写头文件&#xff08;声明变量&#xff09; clas…...

golang学习7,glang的web的restful接口结构体传参

接口&#xff1a; //POST请求 返回json 接口传参json r.POST("/postJson", controller.PostUserInfo) 1.定义结构体 //定义结构体 type Search struct {Id intName string }2.结构体传参 //结构体传参 func PostUserInfo(c *gin.Context) {search : &Searc…...

python模型训练

目录 1、新建模型 train_model.py 2、运行模型 &#xff08;1&#xff09;首先会下载data文件库 &#xff08;2&#xff09;完成之后会开始训练模型&#xff08;10次&#xff09; 3、 训练好之后&#xff0c;进入命令集 4、输入命令&#xff1a;python -m tensorboard.ma…...

逆向案例三:动态xhr包中AES解密的一般步骤,以精灵数据为例

补充知识&#xff1a;进行AES解密需要知道四个关键字&#xff0c;即密钥key,向量iv,模式mode,填充方式pad 一般网页AES都是16位的&#xff0c;m3u8视频加密一般是AES-128格式 网页链接:https://www.jinglingshuju.com/articles 进行抓包结果返回的是密文&#xff1a; 一般思…...

超越CPU和GPU:引领AI进化的LPU

什么是CPU CPU&#xff08;Central Processing Unit&#xff09;是由数十亿个晶体管构成的&#xff0c;可以拥有多个处理核心&#xff0c;通常被称为计算机的“大脑”。它对所有现代计算系统至关重要&#xff0c;因为它执行计算机和操作系统所需的命令和进程。CPU在决定程序运…...

MySQL 逗号分隔查询--find_in_set()函数

业务场景&#xff1a; 在使用MySQL的时候&#xff0c;可能的某个字段存储的是一个英文逗号分割的字符串&#xff08;这里我们不讨论表设计的合理性&#xff09;&#xff0c;如图所示&#xff1a; 我们在查询的时候需要匹配逗号分割中的某个字符串&#xff0c;该怎么查询呢&am…...

【物联网应用案例】智能农业的 9 个技术用例

一、农业中的物联网用例 一般而言&#xff0c;农业物联网传感器以及农业物联网应用有多种类型&#xff1a; 1. 气候条件监测 气象站无疑是当今智能农业领域最受欢迎的设备。这款设备集成了多种智能农业传感器&#xff0c;能够在现场对各类数据进行收集&#xff0c;然后迅速将…...

前端开发——ElementUI组件的使用

文章目录 1. Tabs标签页2. 单选框 el-radio3. 复选框 el-checkbox4. 下拉框 el-select5. 表格 el-table6. 对话框 el-dialog7. 文字提示 el-tooltip8. 抽屉 el-drawer 1. Tabs标签页 <template><el-tabs v-model"activeName" tab-click"handleClick&q…...

Unity编写Shader内置各种矩阵和方法介绍

嗨&#xff0c;各位小伙伴们&#xff0c;我是你们的好朋友咕噜铁蛋&#xff01;今天&#xff0c;我们要来聊一聊关于Unity中编写Shader时内置的各种矩阵和方法。作为Unity开发者&#xff0c;掌握Shader编写是非常重要的一项技能&#xff0c;而了解内置的矩阵和方法将帮助我们更…...

初学者如何使用QT新建一个包含UI界面的C++项目

文章目录 一、下载并安装QT51、下载安装包2、注册/登录账号3、安装qt6 二、新建QT Widget项目1、新建项目并且运行2、易错点&#xff1a;可能运行成功得到UI界面但是会报错&#xff08;原因是使用了中文路径&#xff09; 一、下载并安装QT5 1、下载安装包 进入下载网址 Windo…...

韦东山嵌入式Liunx入门驱动开发四

文章目录 一、异常与中断的概念及处理流程1-1 中断的引入1-2 栈(1) CPU实现a ab的过程(2) 进程与线程 1-3 Linux系统对中断处理的演进1-4 Linux 中断系统中的重要数据结构(1) irq_desc 结构体(2) irqaction 结构体(3) irq_data 结构体(4) irq_domain 结构体(5) irq_domain 结构…...

ubuntu基础操作(1)-个人笔记

搜狗输入法Linux官网-首页搜狗输入法for linux—支持全拼、简拼、模糊音、云输入、皮肤、中英混输https://pinyin.sogou.com/linux 1.关闭sudo密码&#xff1a; 终端&#xff08;ctrl alt t&#xff09;输入 sudo visudo 打开visudo 找到 %sudo ALL(ALL:ALL) ALL 这一行…...

Spring Cloud2022之OpenFeign使用以及部分源码分析

OpenFeign使用 Feign和OpenFeign Feign是Netflix开发的⼀个轻量级RESTful的HTTP服务客户端&#xff0c;可以使用⽤它来发起请求&#xff0c;进行远程调用。Fegin是以Java接口注解的⽅式调⽤Http请求&#xff0c;而不是像RestTemplate那样&#xff0c;在Java中通过封装HTTP请求…...

【非比较排序】计算排序算法

目录 CountSort计数排序 整体思想 图解分析 代码实现 时间复杂度&优缺分析 CountSort计数排序 计数排序是一种非比较排序&#xff0c;不需要像前面的排序一样去比较。 计数排序的特性总结&#xff1a; 1. 计数排序在数据范围集中时&#xff0c;效率很高&#xff0c;但…...

数据结构与算法 - 数组与二分查找 + Leetcode典型题

1. 什么是数组 数组是存放在连续内存空间上的相同类型数据的集合。 数组可以方便的通过下标索引的方式获取到下标下对应的数据。 C中二维数组在地址空间上也是连续的。 需注意&#xff1a; 数组的下标从0开始。数组内存空间的地址是连续的。数组的元素是不能删的&#xff0c…...

Zotero Style深度解析:重塑文献管理视觉体验的架构揭秘

Zotero Style深度解析&#xff1a;重塑文献管理视觉体验的架构揭秘 【免费下载链接】zotero-style Ethereal Style for Zotero 项目地址: https://gitcode.com/GitHub_Trending/zo/zotero-style 在科研工作流程中&#xff0c;文献管理工具Zotero已成为学术研究者的标配&…...

Gitee:国产项目管理工具的崛起与数字化转型新机遇

本土化优势重塑项目管理新格局 在全球数字化转型浪潮中&#xff0c;项目管理工具已成为企业提升效率的关键基建。Gitee作为国内领先的代码托管与协作平台&#xff0c;凭借其深度本土化适配和全流程DevOps支持&#xff0c;正在中国企业团队协作领域掀起一场静默革命。与国际巨头…...

Qwen3-0.6B-FP8部署全攻略:环境配置+模型调用一步到位

Qwen3-0.6B-FP8部署全攻略&#xff1a;环境配置模型调用一步到位 想快速体验一个轻量级但能力不俗的大语言模型吗&#xff1f;Qwen3-0.6B-FP8镜像为你提供了一个开箱即用的解决方案。这个镜像基于通义千问最新的Qwen3-0.6B模型&#xff0c;通过vLLM进行高效部署&#xff0c;并…...

PyTorch 2.8镜像实战案例:使用/data盘高效管理模型与数据集的完整流程

PyTorch 2.8镜像实战案例&#xff1a;使用/data盘高效管理模型与数据集的完整流程 1. 镜像环境概述 PyTorch 2.8深度学习镜像基于RTX 4090D 24GB显卡和CUDA 12.4深度优化&#xff0c;为各类AI任务提供开箱即用的开发环境。这个镜像特别适合需要处理大规模模型和数据的研究人员…...

为什么92%的AI团队还在为多模态推理支付“智商税”?——4个被忽视的硬件-算法协同优化盲区

第一章&#xff1a;多模态大模型推理成本优化的底层悖论 2026奇点智能技术大会(https://ml-summit.org) 当视觉编码器与语言解码器被强行对齐于统一上下文窗口&#xff0c;推理延迟与显存占用便不再遵循线性叠加规律——而是在跨模态注意力层中爆发非线性耦合。这种耦合使得“…...

突破语言壁垒:The Art of Command Line多语言架构与本地化实践指南

突破语言壁垒&#xff1a;The Art of Command Line多语言架构与本地化实践指南 【免费下载链接】the-art-of-command-line Master the command line, in one page 项目地址: https://gitcode.com/GitHub_Trending/th/the-art-of-command-line The Art of Command Line 是…...

2026年聚氨酯阻燃剂Top排行实测分享

2026年聚氨酯阻燃剂Top排行实测分享 随着全球对绿色安全材料需求的持续攀升&#xff0c;聚氨酯阻燃剂作为关键功能性添加剂&#xff0c;在建筑、汽车、电子、纺织等多个领域发挥着日益重要的作用。2026年&#xff0c;行业技术迭代加速&#xff0c;环保法规趋严&#xff0c;特别…...

Mac NTFS读写终极方案:免费开源工具Nigate完整指南

Mac NTFS读写终极方案&#xff1a;免费开源工具Nigate完整指南 【免费下载链接】Free-NTFS-for-Mac Nigate: An open-source NTFS utility for Mac. It supports all Mac models (Intel and Apple Silicon), providing full read-write access, mounting, and management for N…...

为什么顶级画廊已开始拒收纯文本驱动生成作品?SITS2026深度报告:多模态真实性验证协议(MM-Auth v2.3)首次公开

第一章&#xff1a;SITS2026分享&#xff1a;多模态艺术创作 2026奇点智能技术大会(https://ml-summit.org) 在SITS2026大会上&#xff0c;多模态艺术创作成为跨学科融合的焦点议题。研究人员与艺术家共同展示了如何将文本、图像、音频与3D几何信号协同建模&#xff0c;生成具…...

如何免费解锁网易云音乐NCM文件:ncmdumpGUI完整使用指南

如何免费解锁网易云音乐NCM文件&#xff1a;ncmdumpGUI完整使用指南 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾经在网易云音乐下载了心爱的歌曲&…...