wpf基本布局控件 -- 01
<Window x:Class="WpfApp1.MainWindow"
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:WpfApp1"
mc:Ignorable="d"
Title="wdpf入门学习" Height="450" Width="800">
<Grid x:Name="___No_Name_asdasdas">
<!-- 布局选项 二行两列 -->
<Grid.RowDefinitions>
<!-- height属性高度 auto 自适应 根据子元素是否可以撑开 或者固定像素 eg:100
或 比列 2 * 标识是第二行高度的2倍
width 和 height 类似
-->
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions> <!-- 样式的设置
Grid.ColumnSpan="2" 占据 2 列的位置
<Border Background="red" Grid.ColumnSpan="2" Grid.RowSpan="2" />
给整个页面设置ref背景色
-->
<Border Background="red" Grid.ColumnSpan="2" Grid.RowSpan="2" />
<Border Grid.Column="1" Grid.Row="0" Background="yellow" />
<Border Grid.Column="0" Grid.Row="1" Background="pink" />
<Border Grid.Column="1" Grid.Row="1" Background="skyblue" /> <!-- StackPanel 布局控件 水平或者垂直放置元素
默认是垂放置元素的 vertical 是默认垂直排列
Orientation 设置方向 Horizontal 是水平排列
-->
<StackPanel Orientation="Horizontal">
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
<Button Width="100" Height="40" Background="yellow" />
</StackPanel>
<!-- WrapPanel 环绕控件 当水平或垂直空间不够会自动换行
Orientation 默认水平排列 Horization
Vertiavl 垂直排列
-->
<WrapPanel Grid.Row="1" Grid.Column="0" Orientation="Vertical">
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
<Button Width="100" Height="40" />
</WrapPanel>
<!--
停靠面板
最后一个元素默认可以填充{拉伸}剩余所有的空间
LastChildFill = false 设置不填充
DockPanel.Dock 设置元素的方向 -->
<DockPanel Grid.Row="1" Grid.Column="1" LastChildFill="true">
<Button DockPanel.Dock="Bottom" Width="100" Height="40" Background="hotpink" />
<Button DockPanel.Dock="top" Width="100" Height="40" Background="hotpink" />
<Button Width="100" Height="40" Background="hotpink" />
</DockPanel>
<!-- 平均布局 -->
<UniformGrid Grid.Row="0" Grid.Column="1">
<Button Width="100" Height="30" />
<Button Width="100" Height="30" />
<Button Width="100" Height="30" />
<Button Width="100" Height="30" />
<Button Width="100" Height="30" />
<Button Width="100" Height="30" />
</UniformGrid>
</Grid>
</Window>
实现布局:
代码:
<Window x:Class="WpfApp1.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
mc:Ignorable="d"
Title="wdpf入门学习" Height="450" Width="800">
<Grid>
<!-- 使用两行布局 -->
<Grid.RowDefinitions>
<RowDefinition Height="100" />
<RowDefinition />
</Grid.RowDefinitions> <!-- 默认渲染第一行 -->
<Border Background="#686cc8" /> <!-- 第二行使用 2 列布局 -->
<Grid Grid.Row="1">
<Grid.ColumnDefinitions >
<ColumnDefinition Width="200" />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<Border Background="BLUE" />
<Grid Grid.Column="1">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions> <Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition />
</Grid.RowDefinitions> <Border Margin="5" Background="#7378db" />
<Border Margin="5" Grid.Column="1" Background="#4398cd" />
<Border Margin="5" Grid.Column="2" Background="#e480d5" />
<Border Margin="5" Grid.Column="3" Background="#4db5b1" />
<Border Margin="5" Grid.Column="4" Background="#e17b7b" /> <Border Margin="5" Grid.Row="1" Grid.ColumnSpan="3" Background="red" />
<Border Margin="5" Grid.Row="1" Grid.Column="3" Grid.ColumnSpan="2" Background="yellow" />
<Border Margin="5" Grid.Row="2" Grid.ColumnSpan="3" Background="blue" />
<Border Margin="5" Grid.Row="2" Grid.Column="3" Grid.ColumnSpan="2" Background="green" />
</Grid>
</Grid>
</Grid>
</Window>
wpf基本布局控件 -- 01的更多相关文章
- 【WPF】布局控件总结
<Canvas>:画布,默认不会自动裁减超出内容,即溢出的内容会显示在Canvas外面,这是因为默认 ClipToBounds="False":可设置ClipToBou ...
- WPF 自适应布局控件
public class KDLayoutGroup : Grid { public double LabelWidth { get; set; } public double GetLabelWid ...
- WPF布局控件与子控件的HorizontalAlignment/VerticalAlignment属性之间的关系
WPF布局控件与子控件的HorizontalAlignment/VerticalAlignment属性之间的关系: 1.Canvas/WrapPanel控件: 其子控件的HorizontalAlign ...
- WPF自学入门(二)WPF-XAML布局控件
上一篇介绍了xaml基本知识,我们已经知道了WPF简单的语法.那么接下来,我们要认识一下WPF的布局容器.布局容器可以使控件按照分类显示,我们一起来看看WPF里面可以使用哪些布局容器用来布局. 在WP ...
- WPF布局控件常用属性介绍
WPF布局控件常用属性介绍 其它 | 作者:慧都控件网 | 2011-04-06 13:41:57| 阅读 0次 有用(0) 评论(0) 概述:WPF布局控件都是派生自System.Windows ...
- wpf布局控件总结
首先要认识到wpf所有的布局控件都继承自Panel类,Panel类又继承自其他类.继承关系如下: 一.StackPanel布局面板 1.该面板在单行或者单列中以堆栈的形式放置其子元素. 默认情况下,S ...
- WPF 界面布局、常用控件入门教程实例 WPF入门学习控件快速教程例子 WPF上位机、工控串口通信经典入门
WPF(Windows Presentation Foundation)是一种用于创建 Windows 桌面应用程序的框架,它提供了丰富的控件库和灵活的界面布局,可以创建现代化的用户界面.下面是 WP ...
- WPF中Ribbon控件的使用
这篇博客将分享如何在WPF程序中使用Ribbon控件.Ribbon可以很大的提高软件的便捷性. 上面截图使Outlook 2010的界面,在Home标签页中,将所属的Menu都平铺的布局,非常容易的可 ...
- 在WPF程序中将控件所呈现的内容保存成图像(转载)
在WPF程序中将控件所呈现的内容保存成图像 转自:http://www.cnblogs.com/TianFang/archive/2012/10/07/2714140.html 有的时候,我们需要将控 ...
- 布局控件Grid
XAML概述 Silverlight的控件绘制是由XAML语言进行支持的.什么是XAML语言? 简单的说,XAML(Extensible Application Markup Language )是一 ...
随机推荐
- ByteHouse高性能向量检索实践——“以图搜图”
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 随着 LLM 技术的发展,向量检索与向量数据库也受到业界持续关注,它们能够为LLM提供外置记忆单元,通过提供与 ...
- 【RabbitMQ】08 深入部分P1 可靠性投递
1.消息投递确认 这里的代码延用了06的东西: https://www.cnblogs.com/mindzone/p/15374684.html 删除之前的整合案例,重新写了一份案例的队列和交换机配置 ...
- douyin 今日头条 巨量登录滑块和douyin详情滑块分析
声明(lianxi a15018601872) 本文章中所有内容仅供学习交流使用,不用于其他任何目的,抓包内容.敏感网址.数据接口等均已做脱敏处理,严禁用于商业用途和非法用途,否则由此产生的一切后果均 ...
- python性能分析器:line_profiler
代码: import line_profiler import sys def test(): for i in range(0, 10): print( i**2 ) print("End ...
- 2018年视频,路径规划:层次化路径规划系统——hierarchical pathfinding system —— Hierarchical Dynamic Pathfinding for Large Voxel Worlds (续)
前文: 2018年视频,路径规划:层次化路径规划系统--hierarchical pathfinding system -- Hierarchical Dynamic Pathfinding for ...
- MindSpore 数据加载及处理
参考地址: https://www.mindspore.cn/tutorial/zh-CN/r1.2/dataset.html ==================================== ...
- double四舍五入保留两位小数的方法
1,DecimalFormat DecimalFormat decimalFormat = new DecimalFormat(".00"); 意思就是规定保留几位小数 使用时 d ...
- [考试记录] 2024.8.10 csp-s 模拟赛18
80 + 20 + 0 + 70 = 170 第三题应该有 10 分暴力的,但我没打. T1 星际旅行 题面翻译 总共有n个节点,m条路径,要求其中m-2条路径走两遍,剩下2条路径仅走一遍,问不同的路 ...
- 推荐一个优秀的 .NET MAUI 组件库
前言 .NET MAUI 的发布,项目中可以使用这个新的跨平台 UI 框架来轻松搭建的移动和桌面应用. 为了帮助大家更快地构建美观且功能丰富的应用,本文将推荐一款优秀的 .NET MAUI 组件库MD ...
- 2023 ICPC网络赛第一场(A,D,J,L)
2023 ICPC网络赛第一场(A,D,J,L) A Qualifiers Ranking Rules 先把两场比赛的学校排名处理出来,然后两场比赛的同位次进行合并即可 #include <bi ...