【WPF】WPF学习之【二】布局学习
WPF布局学习
- 常用布局
- Grid网格布局
- StackPanel 布局
- Canvas
- DockPanel布局
- WrapPanel布局
常用布局
1、StackPanel: 学习如何使用StackPanel进行垂直和水平布局。
2、Grid: 掌握Grid的网格布局技术。
3、Canvas: 了解Canvas的绝对定位布局。
4、DockPanel: 学习DockPanel的停靠布局方式。
5、WrapPanel: 了解WrapPanel的自动换行布局。
Grid网格布局
1、作用
作用:Grid布局的作用可以理解为拆分网格布局。
2、图片示例

3、代码示例
以下的示例中的属性也是该布局常用的几种属性。
<Grid><Grid.RowDefinitions><RowDefinition></RowDefinition><RowDefinition></RowDefinition><RowDefinition></RowDefinition></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinition></ColumnDefinition><ColumnDefinition></ColumnDefinition><ColumnDefinition></ColumnDefinition><ColumnDefinition></ColumnDefinition></Grid.ColumnDefinitions><Button Grid.RowSpan="2" Grid.ColumnSpan="2" Background="Beige">这是跨单元格示例 </Button><Button Grid.Row="3" Grid.Column="3">指定单元格</Button><Button Grid.IsSharedSizeScope="True" Background="Aquamarine">共享单元格</Button></Grid>
StackPanel 布局
1、作用:将布局拆分为水平或者垂直的布局
2、图片示例


3、代码示例
Orientation(布局方式):Vertical(垂直堆叠)、Horizontal(水平堆叠)
HorizontalAlignment(对齐方式):LEFT、right、center、top、bottom<!--<StackPanel Orientation="Vertical" HorizontalAlignment="Stretch"><Button >从上到下</Button></StackPanel>--><StackPanel Orientation="Horizontal" HorizontalAlignment="Stretch"><Button>从左到右</Button></StackPanel>
Canvas
1、作用:绝对布局
2、图片示例

3、代码示例
<Canvas Background="AliceBlue"><!--绝对定位布局--><Button Canvas.Left="50" Canvas.Bottom="20">Canvas1 </Button><Button Canvas.Left="50" Canvas.Bottom="50">Canvas2 </Button></Canvas>
DockPanel布局
1、作用:停靠布局
2、图片示例

3、代码示例
<DockPanel HorizontalAlignment="Left" LastChildFill="False" ><!--按照控件添加顺序,自动排序并停靠--><Button Width="80" Height="50">DockPanel3</Button><Button Width="80" Height="50" >DockPanel1</Button><Button Width="80" Height="50" DockPanel.Dock="Right">DockPanel2</Button></DockPanel>
WrapPanel布局
1、作用:自动换行布局
2、图片示例

3、代码示例
<WrapPanel><!--自动换行布局--><Button Width="400" Height="50" > wrapPanel 1 </Button><Button Width="400" Height="50" > wrapPanel 2 </Button><Button Width="400" Height="50" > wrapPanel 3 </Button></WrapPanel>
相关文章:
【WPF】WPF学习之【二】布局学习
WPF布局学习 常用布局Grid网格布局StackPanel 布局CanvasDockPanel布局WrapPanel布局 常用布局 1、StackPanel: 学习如何使用StackPanel进行垂直和水平布局。 2、Grid: 掌握Grid的网格布局技术。 3、Canvas: 了解Canvas的绝对定位布局。 4、DockPanel: 学习DockPanel的停靠…...
KEIL中编译51程序 算法计算异常的疑问
KEIL开发 51 单片机程序 算法处理过程中遇到的问题 ...... by 矜辰所致前言 因为产品的更新换代, 把所有温湿度传感器都换成 SHT40 ,替换以前的 SHT21。在 STM32 系列产品上的替换都正常,但是在一块 51 内核的无线产品上面,数据…...
pikachu文件包含漏洞靶场
本地文件包含 1、先随意进行提交 可以得出是GET传参 可以在filename参数进行文件包含 2、准备一个2.jpg文件 内容为<?php phpinfo();?> 3、上传2.jpg文件 4、访问文件保存的路径uploads/2.jpg 5、将我们上传的文件包含进来 使用../返回上级目录 来进行包含木马文件 …...
基于DPU与SmartNIC的K8s Service解决方案
1. 方案背景 1.1. Kubernetes Service介绍 Kubernetes Service是Kubernetes中的一个核心概念,它定义了一种抽象,用于表示一组提供相同功能的Pods(容器组)的逻辑集合,并提供了一种方式让这些Pods能够被系统内的其他组…...
SLM561A系列 60V 10mA到50mA线性恒流LED驱动芯片 为智能家居照明注入新活力
SLM561A系列选型参考: SLM561A10ae-7G SOD123 SLM561A15ae-7G SOD123 SLM561A20ae-7G SOD123 SLM561A25ae-7G SOD123 SLM561A30ae-7G SOD123 SLM561A35ae-7G SOD123 SLM561A40ae-7G SOD123 SLM561A45ae-7G SOD123 SLM561A50ae-7G SOD123 …...
Requests库对session的支持
场景:如何获取登录时响应消息中的sessionid,以及如何在后续请求中把sessionid添到cookie中 Requests库提供了一个Session类,通过requests库中的session对象,requests库会自动帮我们保存服务端返回的cookie数据(set-cookie里的内容…...
利用深度学习实现验证码识别-2-使用Python导出ONNX模型并在Java中调用实现验证码识别
1. Python部分:导出ONNX模型 首先,我们需要在Python中定义并导出一个已经训练好的验证码识别模型。以下是完整的Python代码: import string import torch import torch.nn as nn import torch.nn.functional as FCHAR_SET string.digits# …...
如何通过Spring Cloud Consul增强微服务安全性和可靠性
为了增强微服务的安全性和可靠性,Spring Cloud Consul 是一个非常强大的工具。它不仅提供了服务发现和配置管理功能,还能够有效地管理微服务的安全和健康状态。本文将深入探讨如何通过 Spring Cloud Consul 来增强微服务的安全性和可靠性,主要…...
无代码搭建小程序zion
无代码搭建小程序zion 一、无代码搭建小程序zion的降低技术门槛,提升开发效率 1. 无需编程经验:Zion无代码平台通过提供直观的可视化界面和拖拽式操作,让开发者无需具备复杂的编程技能也能进行小程序的开发。这种方式大大降低了技术门槛&a…...
【南方科技大学】CS315 Computer Security 【Lab1 Packet Sniffing and Wireshark】
目录 IntroductionBackgroundTCP/IP Network StackApplication LayerTransport LayerInternet LayerLink LayerPacket Sniffer Getting WiresharkStarting WiresharkCapturing PacketsTest Run Questions for the Lab Introduction 实验的第一部分介绍数据包嗅探器 Wireshark。…...
【人工智能/机器学习/机器人】数学基础-学习笔记
函数 奇偶性: 偶函数: f ( − x ) f ( x ) f(-x)f(x) f(−x)f(x) y轴对称 f ( x ) x 2 f(x)x^2 f(x)x2 f ( − x ) ( − x ) 2 x 2 f ( x ) f(-x)(-x)^2x^2f(x) f(−x)(−x)2x2f(x) 奇函数: f ( − x ) − f ( x ) f(-…...
视频安防监控LntonAIServer安防管理平台抖动检测和过亮过暗检测
随着视频监控技术的发展,视频质量成为确保监控系统有效性的重要因素。LntonAIServer通过引入抖动检测与过亮过暗检测功能,进一步提升了视频监控系统的可靠性和用户体验。这些功能可以帮助及时发现并解决视频流中的质量问题,确保视频监控系统始…...
网络模型及协议介绍
一.OSI七层模型 OSI Open System Interconnect 开放系统互连模型 以前不同厂家所生产的网络设备的标准是不同的,所以为了统一生产规范就制定了OSI这个生产模型。 作用:降低网络进行数据通信复杂度 这个模型的作用第一降低数据通信的复杂度ÿ…...
手撕HashMap源码
终于通过不屑努力,把源码中的重要部分全都看完了,每一行代码都看明白了,还写了注释 import java.lang.reflect.ParameterizedType; import java.lang.reflect.Type; import java.util.*; import java.util.function.Consumer; import java.ut…...
OceanBase block_file与log过大 的问题
一、说明 block_file 是存放sstable的数据文件,由datafile_disk_percentage 参数与datafile_size参数决定,两个参数同时配置,以datafile_size为主。 datafile_disk_percentage 默认值是90 datafile_size 默认值是0M到正无穷 因为block_file 的…...
【Focal Loss 本质】
Focal Loss 示例 Focal Loss公式: 在后面的例子中,我们假定 y 1 的样本中,有两个预测值分别为(0.8, 0.4)。显然,0.8 很容易分类,0.4 很难分类。 可以看出,Focal Loss 降低了容易分类(prt 0…...
端口安全老化细节
我们都知道port-security aging-time命令用来配置端口安全动态MAC地址的老化时间,但是后面还可以加上类型: [SW1-GigabitEthernet0/0/1]port-security aging-time 5 type absolute Absolute time 绝对老化 inactivity Inactivity time相对老化 …...
【C++】—— string 模拟实现
【C】—— string模拟实现 0 前言1 string的底层结构2 默认成员函数的实现2.1 构造函数2.1.1 无参构造2.1.2 带参构造2.1.2 合并 2.2 析构函数2.3 拷贝构造函数2.3.1 传统写法2.3.2 现代写法 2.3 赋值重载2.3.1 传统写法2.3.2 现代写法2.3.3 传统写法与现代写法的优劣 3 size、…...
详解TensorRT的C++高性能部署以及C++部署Yolo实践
详解TensorRT的C高性能部署 一. ONNX1. ONNX的定位2. ONNX模型格式3. ONNX代码使用实例 二、TensorRT1 引言 三、C部署Yolo模型实例 一. ONNX 1. ONNX的定位 ONNX是一种中间文件格式,用于解决部署的硬件与不同的训练框架特定的模型格式的兼容性问题。 ONNX本身其…...
手机如何切换网络IP地址:方法详解与操作指南
在当今的数字化时代,网络IP地址作为设备在网络中的唯一标识,扮演着至关重要的角色。对于手机用户而言,了解如何切换网络IP地址不仅有助于提升网络体验,还能在一定程度上保护个人隐私。本文将详细介绍手机切换网络IP地…...
SecGPT-14B提示工程:提升OpenClaw安全任务准确率的5个模板
SecGPT-14B提示工程:提升OpenClaw安全任务准确率的5个模板 1. 为什么需要专门的安全提示模板 上周我在用OpenClaw自动化处理服务器日志时,遇到了一个典型问题:当要求它"检查最近的安全事件"时,这个智能助手要么返回过…...
3个实战技巧:彻底解锁Cursor Pro功能的高效完整指南
3个实战技巧:彻底解锁Cursor Pro功能的高效完整指南 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your trial…...
Debian13安装基于apt的Nvidia闭源驱动+CUDA开发环境
Ubuntu安装NVIDIA驱动实在太容易了,直接在额外驱动里面选择就好,但Debian没有这么简单。以往我们都需要从NVIDIA官网下载.run文件,但现在其实更建议各位使用Nvidia提供的本地apt源来管理。本文只针对apt版本驱动安装过程中特定的坑和CUDA开发…...
学习笔记-http协议
1.http介绍http(超文本运输协议)是一种应用层协议,他定义了web客户机是如何向web服务器请求web页面,以及服务器如何将web页面传送给客户机的。他是基于 TCP(HTTP/3 基于 UDP)的结构化请求 - 响应协议&#…...
告别轮询!用STM32 HAL库的LIN主机模式,轻松实现汽车车窗控制(附完整代码)
告别轮询!用STM32 HAL库的LIN主机模式,轻松实现汽车车窗控制 在汽车电子系统中,车窗控制看似简单,实则涉及复杂的通信协议和实时性要求。传统方案依赖硬连线或轮询机制,不仅布线复杂,还难以扩展。LIN总线作…...
all-MiniLM-L6-v2效果展示:实测文本相似度计算,准确率惊艳
all-MiniLM-L6-v2效果展示:实测文本相似度计算,准确率惊艳 1. 模型能力概览 all-MiniLM-L6-v2作为轻量级语义嵌入模型的代表,在保持高效推理的同时,展现出令人惊喜的文本理解能力。这个基于BERT架构的模型通过知识蒸馏技术&…...
基础入门-版本控制-GitLab/Gitea 基本使用
GitLab/Gitea 基本使用 在前面的章节中,我们学习了 Git 基础命令和团队协作流程。在实际工作中,这些操作都是围绕着代码托管平台展开的。GitLab 和 Gitea 是两种广泛使用的自托管 Git 仓库管理工具,它们提供了仓库管理、权限控制、代码审查、CI/CD 等功能,是运维团队进行配…...
SEO 优化人员如何编写优化报告并向上级汇报_SEO 优化人员如何制定长期的 SEO 优化计划
SEO 优化人员如何编写优化报告并向上级汇报 在当前数字化经济的快速发展中,SEO(搜索引擎优化)已成为企业提升网站流量和品牌知名度的重要手段。作为SEO优化人员,我们不仅需要制定有效的SEO优化策略,还要能够精准地编写…...
WAN2.2文生视频镜像部署案例:私有云K8s集群中弹性扩缩容视频生成服务
WAN2.2文生视频镜像部署案例:私有云K8s集群中弹性扩缩容视频生成服务 1. 引言:当视频创作遇上弹性算力 想象一下,你的团队需要为新产品发布制作一批宣传视频。传统的流程是:策划写脚本、设计师画分镜、剪辑师合成渲染࿰…...
【数据结构与算法】第27篇:二叉排序树(BST
一、二叉排序树的定义1.1 性质二叉排序树(Binary Search Tree,BST)满足以下性质:左子树所有节点的值 < 根节点的值右子树所有节点的值 > 根节点的值左右子树本身也是二叉排序树示例:text50/ \30 70/ \ / \2…...
