WPF教程四;布局之DockPanel面板

DockPanel:停靠面板

DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。停靠面板类似于WinForm中控件的Dock属性。DockPanel会对每个子元素进行排序,并将根据指定的边进行停靠,多个停靠在同侧的元素则按顺序排序。在DockPanel中,指定停靠边的控件,会根据定义的顺序占领边角,所有控件绝不会交叠。

默认情况下,后添加的元素只能使用剩余空间,无论对DockPanel的最后一个子元素设置任何停靠值,该子元素都将始终填满剩余的空间。如果不希望最后一个元素填充剩余区域,可以将DockPanel属性LastChildFill设置为false,还必须为最后一个子元素显式指定停靠方向。

1、填充整个剩余空间

使用XAML代码实现:

 1 <Window x:Class="WpfDemo.MainWindow"
 2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 4         Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen">
 5     <DockPanel>
 6         <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button>
 7         <Button DockPanel.Dock="Top" Content="ButtonTop"></Button>
 8         <Button DockPanel.Dock="Right" Content="ButtonRight"></Button>
 9         <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button>
10         <Button  Content="ButtonTop"></Button>
11     </DockPanel>
12 </Window>

2、最后元素不填充剩余空间

使用XAML代码实现:

 1 <Window x:Class="WpfDemo.MainWindow"
 2         xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
 3         xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
 4         Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen">
 5     <DockPanel LastChildFill="False">
 6         <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button>
 7         <Button DockPanel.Dock="Top" Content="ButtonTop"></Button>
 8         <Button DockPanel.Dock="Right" Content="ButtonRight"></Button>
 9         <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button>
10         <Button  DockPanel.Dock="Top" Content="最后一个Button不填充剩余空间"></Button>
11     </DockPanel>
12 </Window>
时间: 2024-12-26 19:06:43

WPF教程四;布局之DockPanel面板的相关文章

WPF教程四;布局之Canvas面板

Canvas:画布面板 画布,用于完全控制每个元素的精确位置.他是布局控件中最为简单的一种,直接将元素放到指定位置,主要来布置图面.使用Canvas,必须指定一个子元素的位置(相对于画布),否则所有元素都将出现在画布的左上角.调整位置用Left.Right.Top和Bottom四个附加属性.如果Canvas是窗口主元素(即最外层的布局面板是Canvas),用户改变窗口大小时,Canvas也会随之变化,子元素的位置也会随之移动,以保证相对于Canvas的位置属性不变.     Canvas允许子元

[译]JavaFX 2.0+系列教程-使用布局(2)-使用内置的布局面板(1)

JavaFX 2.0+系列教程-使用布局(2)-使用内置的布局面板(1)(Layout Pane) 本系列教程主要介绍JavaFX SDK中布局和容器相关类,我们称之为面板(Pane).使用布局面板能够非常简单的管理JavaFX应用程序中的界面元素(Node). 我们可以为每个界面元素设置位置和大小来进行手动布局,但是更简单的选择是使用布局面板.JavaFX SDK中提供了一系列的布局面板,使得可以简单的设置和管理一些经典布局,比如行(Row).列(Column).堆栈(Stack)和瓷砖(Ti

WPF入门基础教程之布局(1)

WPF的常用布局控件的介绍及使用方法 (1) 开局一张图,内容全靠写,本系列的文章, 主要针对刚入门.亦或是从 winform/bs转过来的开发人员快速入门的指南, 相对于其它一些文章中会详细的从项目如何建立到其实现的原理及组成部分, 本系列的文章则旨在如果快速的构建: 从布局.样式.触发器.绑定.显示.MVVM架构一系列的阶段学习,构建一个基础的呈现以达到学习的目的. WPF相关资料合集 (含书籍.框架.及开源UI组件等) WPF编程宝典.pdf 深入浅出WPF.pdf MaterialDes

【WPF学习】第八章 Grid面板

Gird面板是WPF中功能最强大的布局容器.很多实用其他布局控件能完成的功能,用Grid面板也能实现.Grid面板也是将窗口分割成更小区域的理想工具.实际上,由于Grid面板十分由于ong,因此在Visual Studio中为窗口添加新的XAML文档时,会自动添加Grid标签作为顶级容器,并嵌套在Window根元素中. Grid面板将元素分割到不可见的行列网格中.尽管可在一个单元格中放置多个元素,但在每个单元格中放置一个元素通常更合理.当然,在Grid单元格中的元素本身也可能是另一个容器,该容器

[译]JavaFX 2.0+系列教程-使用布局(1)

JavaFX 2.0+系列教程-使用布局(1) 这个系列的教程主要是介绍如何在JavaFX应用程序中使用布局面板来创建用户界面. 主要包括以下3个主题: 使用内置的布局面板 - 介绍内置的布局面板,以及为每个面板提供简单的示例. 设置节点大小和对齐的技巧 - 提供了为节点覆盖默认大小和位置的示例. 使用CSS来修饰布局面板 - 介绍如何使用CSS来自定义布局面板. [译]JavaFX 2.0+系列教程-使用布局(1),布布扣,bubuko.com

WPF教程:附加属性

一.附加属性的特点1.特殊的依赖属性2.用于非定义该属性的类 例如Grid面板的RowDefinition.ColumnDefinition.Canvas面板的Left.RightDockPanel面板的Dock都是附加属性. 二.附加属性的定义 1.声明数据属性变量. public static 的DependencyProperty类型的变量.2.在属性系统中进行注册,使用DependencyProperty.RegisterAttached()方法来注册,方法参数和注册依赖属性时Regis

AutoCAD2014室内设计 AutoCAD2009施工图教程 CAD布局及规范作图教程 室内手绘入门教程

热门推荐电脑办公计算机基础知识教程 Excel2010基础教程 Word2010基础教程 PPT2010基础教程 五笔打字视频教程 Excel函数应用教程 Excel VBA基础教程 WPS2013表格教程 更多>平面设计PhotoshopCS5教程 CorelDRAW X5视频教程 Photoshop商业修图教程 Illustrator CS6视频教程 更多>室内设计3Dsmax2012教程 效果图实例提高教程 室内设计实战教程 欧式效果图制作实例教程 AutoCAD2014室内设计 Aut

史上最详细的Android Studio系列教程四--Gradle基础

史上最详细的Android Studio系列教程四--Gradle基础

Thinkphp入门 四 —布局、缓存、系统变量 (48)

原文:Thinkphp入门 四 -布局.缓存.系统变量 (48) [控制器操作方法参数设置] http://网址/index.php/控制器/操作方法 [页面跳转] [变量调节器] Smarty变量调节器 TP变量调节器:普通的php函数 (count  strlen   str_replace) 定义:前者的输出,是后者的输入 [子模板包含] 当前模块彼此包含 <include  file=”模板名称”  /> [使用布局layout] 1. 开启布局,配置变量信息config.php 2.