WPF WPF布局元素
WPF中的布局元素:
Grid:网格。类似HTML中的Table。
StackPanel:栈式面板。竖直或水平排成一条直线。
Canvas:画布。绝对坐标定位,类似于Windows Form的布局。
DockPanel:泊靠式面板。是具有停靠功能的布局控件,其内部控件根据附加属性指定停靠位置。
WrapPanel:自动折行面板。排满一行自动折行,类似HTML中的流式布局。
综合实例链接:WPF综合实例
Gird(网格控件):
RowDefinitions : 拆分行,ColumnDefinitions:拆分列.
Grid.Column:指定所属行,Grid.Row :指定所属列;Grid.RowSpan:跨行数,Grid.ColumnSpan:跨列数.
指定行(列)的高度(宽度):
固定值:通过制定一个数值,如:Width="50" 。
自适应:通过Auto关键字指定,根据内部控件自适应。
平分值:通过 数字* 的格式指定,公式 = (总宽度 – 固定值 – 自适应) / *数量之和 * * 数量
<Grid><Grid.RowDefinitions><RowDefinition Height="100"/><RowDefinition/></Grid.RowDefinitions><Grid.ColumnDefinitions><ColumnDefinition Width="Auto"/><ColumnDefinition Width="1*"/><ColumnDefinition Width="2*"/></Grid.ColumnDefinitions><!--未指明Grid.Column,Grid.Row,则默认其Grid.Column=0,Grid.Row=0--><TextBlock Text="认识WPF布局元素"/><Button Grid.Column="1" Grid.Row="0" Content="按键" Width="100" Height="30"/><Rectangle Grid.Column="2" Grid.Row="0" Grid.RowSpan="2" Height="300" Width="80" Fill="LightBlue" /></Grid>
UniformGrid:在网格(网格中的所有单元格都具有相同的大小)中排列内容
StackPanel:
Orientation 排列方法,垂直还是水平:
Horizontal :按照水平排列
Vertical(默认) :按照垂直排列
FlowDirection 排列方向:
LeftToRight(默认):从左向右排列
RightToLeft:从右向左排列
<Grid><Grid.ColumnDefinitions><ColumnDefinition/><ColumnDefinition/></Grid.ColumnDefinitions><Grid.RowDefinitions><RowDefinition/><RowDefinition/></Grid.RowDefinitions><StackPanel Orientation="Horizontal" Height="50"><Button Content="1" Width="50"/><Button Content="2" Width="50"/><Button Content="3" Width="50"/></StackPanel><StackPanel Orientation="Horizontal" Height="50" Grid.Column="1"><Button Content="1" Width="50"/><Button Content="2" Width="50"/><Button Content="3" Width="50"/></StackPanel><!--默认Orientation="Vertical"--><StackPanel Width="60" Height="100" Grid.Row="1"><Button Content="1" Width="50"/><Button Content="2" Width="50"/><Button Content="3" Width="50"/></StackPanel></Grid>
Canvas:
用于定义一个区域,可在其中使用相对于 Canvas 区域的坐标以显式方式来定位子元素(如:Canvas.Left="25"),Canvas.Zindex表示Canvas内控件Z轴位置,数字越大越靠上(其他布局元素的控件设置Z轴位置使用Panel.Zindex)。
<Canvas><Ellipse Fill="Red" Width="200" Height="100" Canvas.ZIndex="1" Canvas.Left="65" Canvas.Top="45"/><Rectangle Fill="Blue" Width="200" Height="200" Canvas.Left="200" Canvas.Top="100"/></Canvas>
DockPannel:
停靠的长度或宽度计算顺序依次为左右上下中(如:DockPannel.Dock="Right"),最后一个控件的数量自适应剩余空间。
<DockPanel><Button DockPanel.Dock="Top" Background="Aqua">Top</Button><Button DockPanel.Dock="Left" Background="Green">Left</Button><Button DockPanel.Dock="Right" Background="Yellow">Right</Button><Button DockPanel.Dock="Bottom" Background="Pink">Bottom</Button><Button Background="Orange">Last</Button></DockPanel>
WrapPanel:
自动折行面板,WrapPanel 跟StackPanel有点类似,不同之处在于其根据内部控件大小自动换行。
WPF WPF布局元素相关推荐
- WPF代码模板-布局部分
Grid 两行和三列 <Grid ShowGridLines="True"> <Grid.RowDefinitions> <RowDefinition ...
- 学习WPF——WPF布局——了解布局容器
WPF布局工作内部原理 WPF渲染布局时主要执行了两个工作:测量和排列 测量阶段,容器遍历所有子元素,并询问子元素所期望的尺寸 排列阶段,容器在合适的位置放置子元素,并设置元素的最终尺寸 这是一个递归 ...
- WPF 项目开发入门(二) WPF 页面布局
WPF 项目开发入门(一) 安装运行 WPF 项目开发入门(二) WPF 页面布局 WPF 项目开发入门(三)WPF 窗体与页面 WPF 项目开发入门(四) MVVM 模式 与 TreeView树组件 ...
- (转)WPF面板布局介绍Grid、StackPanel、DockPanel、WrapPanel
回顾 上一篇,我们介绍了基本控件及控件的重要属性和用法,我们本篇详细介绍WPF中的几种布局容器及每种布局容器的使用场景,当 然这些都是本人在实际项目中的使用经验,可能还存在错误之处,还请大家指出. 本 ...
- ( 转)WPF面板布局介绍Grid、StackPanel、DockPanel、WrapPanel
回顾 上一篇,我们介绍了基本控件及控件的重要属性和用法,我们本篇详细介绍WPF中的几种布局容器及每种布局容器的使用场景,当 然这些都是本人在实际项目中的使用经验,可能还存在错误之处,还请大家指出. 本 ...
- [WPF]WPF开发方法论
纵观Windows GUI应用程序开发方法,从Windows API.MFC到Visual Basic再到.NET Framework,WPF的开发方法论是在.NET Framework方法论的基础上 ...
- HTML5新布局元素布局,HTML5新的布局元素
HTML5相对于HTML4新增了一些布局元素 新增布局标签的优点: ⒈更加注重文档的结构内容而不是以什么形式展现出来 ⒉对人的友好,更加语义化,增加代码的可读性 ⒊对计算机友好,浏览器更容易解析 新增 ...
- HTML5 布局元素
元素类型 块级元素 独占一行,不和其他元素待在一起 可以设置宽高 用来对网页进行布局,承载内容 行内元素 不会独占一行,可以和其他元素待在一行 不可以设置宽高,宽高由里面的内容决定 行内块级元素 不会 ...
- 【CSS布局】已知布局元素的高度,写出三栏布局,要求左栏、右栏宽度各为300px,中间自适应。
CSS 的布局应该是 CSS 体系中的重中之重了,主要的布局方式有 table 表格布局, flex 盒子布局.float 浮动布局.position 定位布局,grid 网格布局,还有针对于移动端的 ...
最新文章
- 计算机学win7画图,Win7系统自带画图工具如何打开?win7打开画图工具教程
- 中科视拓开源SeetaFace2
- JavaScript label语句
- 在linux上ansi格式转换换utf-8格式会乱码吗?,c++对编码格式ANSI utf8 unicode 进行转换...
- ERP计划参数如何在线更新
- ES中 minimum_should_match 的用法和误区
- 给ecmall添加积分购物的功能
- 程序员应该常去的网站
- Deepin20-R7000开启显示器扩展
- From MAP, MLE, OLS, G-N to IEKF,EKF
- 千亿元宇宙市场,Soul、映客的新动力
- Ceph RGW高可用HA集群keepalived+Haproxy
- R语言 根据变量包含某些字符,生成新变量
- 漫画图解 ElasticSearch 搜索原理
- 实体关系抽取几篇论文
- 如何访问网络上其他计算机,电脑怎么连接别的网络
- 【Java基础学习】
- 无法打开物理文件 XXX.mdf,操作系统错误 5:5(拒绝访问。)的解决办法
- GO语言和区块链开发准备阶段-默克尔树
- 深入分析Java Web技术内幕
热门文章
- 关于springmvc项目一加入validation-api包就报错的解决方法
- VB.NET连接数据库的几种方法
- 莫比乌斯进阶:bzoj 2693 jzptab(Mobius)
- 下载模板引擎art-template时出现的问题及解决方案
- Gopher China 2019 讲师专访-腾讯/TARS开源团队核心成员陈明杰
- @Autowried注入方式
- 1062lcd在dxp哪个库_Protel DXP 自带常用元件库路径
- 关于Bootstrap的一些使用
- Educational Codeforces Round 118 (Rated for Div. 2) C. Poisoned Dagger(二分或搜索)
- sql server 学习教程