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

【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 矜辰所致前言 因为产品的更新换代&#xff0c; 把所有温湿度传感器都换成 SHT40 &#xff0c;替换以前的 SHT21。在 STM32 系列产品上的替换都正常&#xff0c;但是在一块 51 内核的无线产品上面&#xff0c;数据…...

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中的一个核心概念&#xff0c;它定义了一种抽象&#xff0c;用于表示一组提供相同功能的Pods&#xff08;容器组&#xff09;的逻辑集合&#xff0c;并提供了一种方式让这些Pods能够被系统内的其他组…...

SLM561A​​系列 60V 10mA到50mA线性恒流LED驱动芯片 为智能家居照明注入新活力

SLM561A系列选型参考&#xff1a; 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的支持

场景&#xff1a;如何获取登录时响应消息中的sessionid&#xff0c;以及如何在后续请求中把sessionid添到cookie中 Requests库提供了一个Session类&#xff0c;通过requests库中的session对象&#xff0c;requests库会自动帮我们保存服务端返回的cookie数据(set-cookie里的内容…...

利用深度学习实现验证码识别-2-使用Python导出ONNX模型并在Java中调用实现验证码识别

1. Python部分&#xff1a;导出ONNX模型 首先&#xff0c;我们需要在Python中定义并导出一个已经训练好的验证码识别模型。以下是完整的Python代码&#xff1a; import string import torch import torch.nn as nn import torch.nn.functional as FCHAR_SET string.digits# …...

如何通过Spring Cloud Consul增强微服务安全性和可靠性

为了增强微服务的安全性和可靠性&#xff0c;Spring Cloud Consul 是一个非常强大的工具。它不仅提供了服务发现和配置管理功能&#xff0c;还能够有效地管理微服务的安全和健康状态。本文将深入探讨如何通过 Spring Cloud Consul 来增强微服务的安全性和可靠性&#xff0c;主要…...

无代码搭建小程序zion

无代码搭建小程序zion 一、无代码搭建小程序zion的降低技术门槛&#xff0c;提升开发效率 1. 无需编程经验&#xff1a;Zion无代码平台通过提供直观的可视化界面和拖拽式操作&#xff0c;让开发者无需具备复杂的编程技能也能进行小程序的开发。这种方式大大降低了技术门槛&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。…...

【人工智能/机器学习/机器人】数学基础-学习笔记

函数 奇偶性&#xff1a; 偶函数&#xff1a; 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) 奇函数&#xff1a; f ( − x ) − f ( x ) f(-…...

视频安防监控LntonAIServer安防管理平台抖动检测和过亮过暗检测

随着视频监控技术的发展&#xff0c;视频质量成为确保监控系统有效性的重要因素。LntonAIServer通过引入抖动检测与过亮过暗检测功能&#xff0c;进一步提升了视频监控系统的可靠性和用户体验。这些功能可以帮助及时发现并解决视频流中的质量问题&#xff0c;确保视频监控系统始…...

网络模型及协议介绍

一.OSI七层模型 OSI Open System Interconnect 开放系统互连模型 以前不同厂家所生产的网络设备的标准是不同的&#xff0c;所以为了统一生产规范就制定了OSI这个生产模型。 作用&#xff1a;降低网络进行数据通信复杂度 这个模型的作用第一降低数据通信的复杂度&#xff…...

手撕HashMap源码

终于通过不屑努力&#xff0c;把源码中的重要部分全都看完了&#xff0c;每一行代码都看明白了&#xff0c;还写了注释 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的数据文件&#xff0c;由datafile_disk_percentage 参数与datafile_size参数决定&#xff0c;两个参数同时配置&#xff0c;以datafile_size为主。 datafile_disk_percentage 默认值是90 datafile_size 默认值是0M到正无穷 因为block_file 的…...

【Focal Loss 本质】

Focal Loss 示例 Focal Loss公式&#xff1a; 在后面的例子中&#xff0c;我们假定 y 1 的样本中&#xff0c;有两个预测值分别为(0.8, 0.4)。显然&#xff0c;0.8 很容易分类&#xff0c;0.4 很难分类。 可以看出&#xff0c;Focal Loss 降低了容易分类&#xff08;prt 0…...

端口安全老化细节

我们都知道port-security aging-time命令用来配置端口安全动态MAC地址的老化时间&#xff0c;但是后面还可以加上类型&#xff1a; [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是一种中间文件格式&#xff0c;用于解决部署的硬件与不同的训练框架特定的模型格式的兼容性问题。 ONNX本身其…...

手机如何切换网络IP地址:‌方法详解与操作指南‌

在当今的数字化时代&#xff0c;‌网络IP地址作为设备在网络中的唯一标识&#xff0c;‌扮演着至关重要的角色。‌对于手机用户而言&#xff0c;‌了解如何切换网络IP地址不仅有助于提升网络体验&#xff0c;‌还能在一定程度上保护个人隐私。‌本文将详细介绍手机切换网络IP地…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

业务系统对接大模型的基础方案:架构设计与关键步骤

业务系统对接大模型&#xff1a;架构设计与关键步骤 在当今数字化转型的浪潮中&#xff0c;大语言模型&#xff08;LLM&#xff09;已成为企业提升业务效率和创新能力的关键技术之一。将大模型集成到业务系统中&#xff0c;不仅可以优化用户体验&#xff0c;还能为业务决策提供…...

利用ngx_stream_return_module构建简易 TCP/UDP 响应网关

一、模块概述 ngx_stream_return_module 提供了一个极简的指令&#xff1a; return <value>;在收到客户端连接后&#xff0c;立即将 <value> 写回并关闭连接。<value> 支持内嵌文本和内置变量&#xff08;如 $time_iso8601、$remote_addr 等&#xff09;&a…...

java 实现excel文件转pdf | 无水印 | 无限制

文章目录 目录 文章目录 前言 1.项目远程仓库配置 2.pom文件引入相关依赖 3.代码破解 二、Excel转PDF 1.代码实现 2.Aspose.License.xml 授权文件 总结 前言 java处理excel转pdf一直没找到什么好用的免费jar包工具,自己手写的难度,恐怕高级程序员花费一年的事件,也…...

【OSG学习笔记】Day 16: 骨骼动画与蒙皮(osgAnimation)

骨骼动画基础 骨骼动画是 3D 计算机图形中常用的技术&#xff0c;它通过以下两个主要组件实现角色动画。 骨骼系统 (Skeleton)&#xff1a;由层级结构的骨头组成&#xff0c;类似于人体骨骼蒙皮 (Mesh Skinning)&#xff1a;将模型网格顶点绑定到骨骼上&#xff0c;使骨骼移动…...

dify打造数据可视化图表

一、概述 在日常工作和学习中&#xff0c;我们经常需要和数据打交道。无论是分析报告、项目展示&#xff0c;还是简单的数据洞察&#xff0c;一个清晰直观的图表&#xff0c;往往能胜过千言万语。 一款能让数据可视化变得超级简单的 MCP Server&#xff0c;由蚂蚁集团 AntV 团队…...

Mobile ALOHA全身模仿学习

一、题目 Mobile ALOHA&#xff1a;通过低成本全身远程操作学习双手移动操作 传统模仿学习&#xff08;Imitation Learning&#xff09;缺点&#xff1a;聚焦与桌面操作&#xff0c;缺乏通用任务所需的移动性和灵活性 本论文优点&#xff1a;&#xff08;1&#xff09;在ALOHA…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!

简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求&#xff0c;并检查收到的响应。它以以下模式之一…...

Linux离线(zip方式)安装docker

目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1&#xff1a;修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本&#xff1a;CentOS 7 64位 内核版本&#xff1a;3.10.0 相关命令&#xff1a; uname -rcat /etc/os-rele…...

Java数值运算常见陷阱与规避方法

整数除法中的舍入问题 问题现象 当开发者预期进行浮点除法却误用整数除法时,会出现小数部分被截断的情况。典型错误模式如下: void process(int value) {double half = value / 2; // 整数除法导致截断// 使用half变量 }此时...