WPF 深入理解二、布局

news2025/2/24 12:06:38

布局与控件

常用得布局属性

  • HorizontalAlignment:用于设置元素的水平位置
  • VerticalAlignment: 用于设置元素的垂直位置
  • Margin: 指定元素与容器的边距
  • Height: 指定元素的高度
  • Width: 指定元素的宽度
  • WinHeight/winWidth:指定元素的最小高度和宽度
  • MaxHeight/MaxWidth: 指定元素的最大高度和宽度
  • Padding: 指定元素内部边距

常用的布局容器

  • Grid
  • StackPanel
  • WrapPanel
  • DockPanel
  • UniformGrid

Grid

Grid为最常用的布局容器,作为View中的主要组成部分,负责框架中整体的页面布局。(把有限得控件切割为多行多列)

ShowGridLines:可以设置行业的边距线的显示。Grid.RowDefinitions:可以创建任意行,进行固定高度与百分比或自适应高度设置,Grid.ColumnDefinitions:可以创建任意列,进行固定宽度与百分或自适应宽度设置
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

StackPanel

Drientation: 用于设置StackPanel的元素排列方式。默认以垂直的方式布局。

在这里插入图片描述

WrapPane

WrapPanel与StackPanel类似的功能,相对于StackPanel,==具有在有限的容器范围内,可以自动换行,或者换列处理(StackPanel超出得话 会排列到容器之外不显示)。==具体则取决于WrapPanel的排列方式(Orientation)。默认水平布局方向(Horizontal)
在这里插入图片描述

DockPanel

包含在DockPanel中的元素,具备DockPanel.Dock的4个枚举值(Top/Left/Right/Bottom)用于设置元素的锚定位置

LastChildFill:容器中的最后一个元素时,默认该元素填充DockPanel所有空间,默认值为True

DockPanel中的元素未显示添加DockPanel.Dock属性时,系统则会默认为DockPanel.Dock=“Left”

在这里插入图片描述

默认为DockPanel.Dock=“Left”
在这里插入图片描述

LastChildFill:容器中的最后一个元素时,默认该元素填充DockPanel所有空间,默认值为True
在这里插入图片描述

UniformGrid

与Grid不同的是,该容器具备Columns/Rows 属性,通过设置该属性,UniformGrid则具备相应的行与列,但是设置的Columns/Rows不允许单独的进行容器的大小设置。

位于UniformGrid中的子元素,按输入顺序排列至容器中,直至填充容器的所有空间。

未显示指定Columns/Rows,UniformGrid则为子元素动态分配Columns/Rows,换行与换列的基准主要基于UniformGrid的容器大小(宽度与高度)。

在这里插入图片描述

输入顺序排列至容器中,直至填充容器的所有空间。

在这里插入图片描述

空间结构

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AD域离线破解新思路:Trustroasting和TimeRoasting

简介 近期Tom Tervoort发表了白皮书《TIMEROASTING, TRUSTROASTING AND COMPUTER SPRAYING》并在Github发布了名为Timeroast的工具包,其中介绍了几种新的攻击思路TimeRoasting、Trustroasting和计算机账户密码喷洒,本篇文章主要对TimeRoasting和Trustro…

主流电商平台API接口【京东商品详情按关键字搜索商品按图搜索京东商品(拍立淘)获得店铺的所有商品】

主流电商平台商品接口在电商企业中的应用可以帮助企业实现信息同步、库存管理、订单处理、数据分析和营销推广等多重功能,提升运营效率、优化用户体验,进而推动业务增长。 jd API 接入说明 API地址:申请调用KEY地址 调用示例: 参数说明 通用…

『大模型笔记』斯坦福大学教授李飞飞在2024年数据与人工智能峰会上的人工智能历史与未来

MAC 文章目录 一. 斯坦福大学教授李飞飞在2024年数据与人工智能峰会上的人工智能历史与未来引言过去与现在现代 AI 的进步未来的发展空间智能近期进展与未来展望文字输入制作视频机器人学习AI 与人类互动医疗健康应用结语二. 参考文献一. 斯坦福大学教授李飞飞在2024年数据与人…

保姆级网络信任证书配置教程

前言 TitanIDE在第一次安装完成以后,会显示的网络协议是https不安全的,我们需要在本地配置信任证书,有信任证书才能正常使用所有的功能,以下操作均以服务器名称ide,ip为192.168.101.144的服务器为例,在实际…

若依 Excel导入 字段值转换 字典自动匹配转换等

Excel表格数据截图: 数据库结构:需要将数据转换为数值或char类型存储 转换结果: 未使用Excel注解参数的效果: 断点数据 使用Excel注解参数的效果: 断点数据 最终入库: 参考: http://doc.ru…

一种改进最大相关峭度解卷积的滚动轴承故障诊断方法(MATLAB)

近年来,最大相关峭度解卷积受到了研究人员越来越多的关注,陆续有多篇研究论文将该方法应用于滚动轴轴承故障诊断。MCKD是由McDonald提出的一种解卷积方法,其算法中设计了一个新的目标函数——相关峭度,并以此为优化目标设计一系列…

软件测试——稳定性测试:adb Monkey

Monkey 1. Monkey1.1 Monkey 是什么1.2 Monkey 测试场景1.3 Monkey 特点1.4 Monkey 在哪里1.5 测试准备事项1.6 Monkey 参数列表 2. 基本命令3. 常用参数4. 事件类型5. 调试参数6. 日志管理7. 日志错误定位8. Monkey测试可以发现的问题 1. Monkey 1.1 Monkey 是什么 Monkey是一…

测量8个回路的三相多功能电表

随着工业的发展,在生产过程中,往往需要同时间测量多台设备的电流、电压和电量数据的采集,但是很多情况下,安装独立电表或者多用户计量箱,受限于安装空间大小无法实现。 下面我们举例说明,如图所示需要计量八个塑壳开关回路下设备的…

vue的安装配置并创建项目

npm 工具的安装 安装node.js之后,npm工具会自动安装到系统环境中 网址:https://nodejs.org/en vue的安装 安装vue并创建项目 npm create vuelatest 进入项目之后,然后启动npm run dev 解决方法: npm install -g create-vite 再次启动 通…

怎么为自己的VPS选择合适的CPU和RAM?

为网站选择VPS(虚拟专用服务器)与为家庭或办公室选择台式机或笔记本电脑没有什么不同。基本上,您要做的就是查看硬件配置并比较功能和价格。 然而,虽然您可能对个人计算机所需的资源类型有一个粗略的估计,但为服务器获…

企业PC端官网在线客服源码系统 完全开源可二开 附带源代码包+搭建部署教程

系统概述 企业 PC 端官网在线客服源码系统是一款专为企业打造的先进客服解决方案。它基于先进的技术架构,旨在为企业提供稳定、高效、功能丰富的在线客服服务。 该系统采用了模块化设计理念,将各个功能模块有机地整合在一起,形成了一个完整…

【Mybatis-plus】查询及更新为null或空字符串

前言 查询为 null 或者 空字符串时&#xff0c;可以使用 or() 关键字。 提示&#xff1a;以下是本篇文章正文内容&#xff0c;下面案例可供参考 查询 使用 LambdaQueryWrapper 查询 parentCode 为 null 或者 空字符串 的数据。 LambdaQueryWrapper<CompanyEntity> qu…

redhat-devtoolset备忘

参考&#xff1a; User Guide Red Hat Developer Toolset 12 | Red Hat Customer Portal https://access.redhat.com/documentation/en-us/red_hat_developer_toolset/12/html-single/user_guide/index Red Hat Devtoolset 是 Red Hat 提供的一组开发工具集合&#xff0c;主要用…

MySQL服务无法启动,服务没有报告任何错误(cmd里面)

安装压缩包版MySQL时&#xff0c;有时会此问题 解决方法 方法一、MySQL默认3306端口被占用&#xff0c;此时结束占用该端口的任务进程即可&#xff1b; 1.进入cmd,查找占用的端口 netstat -aon|findstr 3306 发现进程编号&#xff08;也就是PID)为2084的进程占用了此端口&am…

面试专区|【62道Redis高频题整理(附答案背诵版)】

什么是Redis? Redis是一个高性能的开源内存数据库系统&#xff0c;它使用键值对存储数据&#xff0c;并支持多种数据结构&#xff0c;如字符串、哈希、列表、集合和有序集合。与传统关系型数据库不同&#xff0c;Redis将数据存储在内存中&#xff0c;以实现快速读写操作。同时…

Chromium 开发指南2024 Mac篇-Chromium项目编译小技巧(六)

1. 前言 在编译大型项目如 Chromium 时&#xff0c;优化编译速度是非常重要的。本文将介绍一些编译优化的小技巧&#xff0c;尤其是如何使用 ccache 来加速 C/C 代码的重新编译。ccache 是一个编译器缓存&#xff0c;通过缓存之前的编译并检测何时再次进行相同的编译&#xff…

无引擎游戏开发(3):数据结构设计|功能函数完善

为了简单起见&#xff0c;我们将棋盘的二维数组定义为全局变量。除此之外还要定义一个char类型的全局变量来识别当前的落子类型&#xff0c;我们将其初始化为‘O’。 char Board_data[3][3] {{-, -, -},{-, -, -},{-, -, -}, };char Cur_piece O; 现在回到“读取操作”部分…

保护模式下的内存访问(笔记)

;代码清单12-1;文件名&#xff1a;c12_mbr.asm;文件说明&#xff1a;硬盘主引导扇区代码;创建日期&#xff1a;2011-5-16 19:54&#xff1b;修改于2022-02-16 11:15;设置堆栈段和栈指针mov ax, csmov ss, axmov sp, 0x7c00;计算GDT所在的逻辑段地址mov ax, [cs: gdt_base 0x7c…

树(数据结构篇)

数据结构之树 树 本篇讲的树也就是多叉树 普通树(多叉树) 概念&#xff1a; 树就是由根节点(父亲)分出多个分支节点(儿子)&#xff0c;然后分支又分出多个分支&#xff0c;我们将这种结构称为树,树也可以这么定义&#xff1a;一棵树由称作根的节点r以及0个或多个非空的(子…

滴漏智能监测报警摄像机

智能监测摄像机在现代城市安全管理中扮演着关键角色。这些先进设备利用高度精确的图像识别技术&#xff0c;实时监测各类安全隐患&#xff0c;特别是在防疫措施中的应用日益显著。滴漏智能监测报警摄像机作为其中的一种&#xff0c;具备了多重功能&#xff0c;极大地增强了公共…