WPF布局——布局面板StackPanel

  • WPF——StackPanel布局控件
    • StackPanel实例——堆式面板嵌套
    • StackPanel实例——用户搜索页面

WPF——StackPanel布局控件

StackPanel(堆式面板),将子元素按照声明的先后顺序堆在一起。设置Orientation属性值确定以水平或垂直方向堆放。
StackPanel中,根据子元素的最大尺寸来确定最佳尺寸。


StackPanel实例——堆式面板嵌套

此例设计要求:现在使用堆式面板来实现,在最外层是边框环绕,内部一个StackPanel中再嵌套两个StackPanel,子元素Button
依旧是在解决方案WpfApp3新建项目:命名项目名字NestingStackPanel
效果图

实现代码

<Window x:Class="NestingStackPanel.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:NestingStackPanel"mc:Ignorable="d"Title="MainWindow" Height="310" Width="460"><!-- 设置边界厚度、水平对齐方式、垂直对齐方式 --><Border BorderBrush="Black" BorderThickness="1"HorizontalAlignment="Center" VerticalAlignment="Center"><StackPanel Height="262" Width="435"><StackPanel Margin="2" Background="YellowGreen" Orientation="Vertical" ><Button Content="One " Margin="1" Height="40"/><Button Content="Two " Margin="1" Height="40"/><Button Content="Three " Margin="1" Height="40"/><Button Content="Four " Margin="1" Height="40"/><Button Content="Five " Margin="1" Height="40"/></StackPanel><StackPanel Margin="2" Background="GreenYellow" Orientation="Horizontal" Height="40"><Button Content="One " Margin="3" Width="80"/><Button Content="Two " Margin="3" Width="80"/><Button Content="Three " Margin="3" Width="80"/><Button Content="Four " Margin="3" Width="80"/><Button Content="Five " Margin="3" Width="80"/></StackPanel></StackPanel></Border>
</Window>

StackPanel会根据方向使用无限宽度和高度来测量子控件,当有其他布局同时出现时,会影响布局的整体风格。本例中,通过最外层的Border对StackPanel进行约束。


StackPanel实例——用户搜索页面

StackPanel适合局部页面布局,用它做一个简单的用户搜索页面。
设计要求:使用堆式面板来实现搜索页面,尽可能使用不同的控件作为子元素。项目名称为SearchStackPanel
页面效果如下:

XAML代码如下:

<Window x:Class="SearchStackPanel.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:SearchStackPanel"mc:Ignorable="d"Title="MainWindow" Height="220" Width="360"><StackPanel Background="AliceBlue"><TextBlock Margin="4">Look for:</TextBlock><ComboBox Margin="4"></ComboBox><TextBlock Margin="4">Filtered by:</TextBlock><ComboBox Margin="4"></ComboBox><Button Margin="4,5">Search</Button><CheckBox Margin="4">Search in titles only</CheckBox><CheckBox Margin="4">Search in Keyword</CheckBox></StackPanel>
</Window>

其中使用了两个TextBlock、两个ComboBox、两个CheckBox和一个Button构成的页面,设置Margin属性让页面保持更清爽。


上一篇:WPF编程基础入门 ——— 第三章 布局(三)布局面板DockPanel.
下一篇:WPF编程基础入门 ——— 第三章 布局(五)布局面板WrapPanel.
WPF编程基础入门 ——— 目录导航.

WPF编程基础入门 ——— 第三章 布局(四)布局面板StackPanel相关推荐

  1. WPF编程基础入门 ——— 第三章 布局(五)布局面板WrapPanel

    WPF布局--布局面板WrapPanel WPF--WrapPanel布局控件 WrapPanel实例--十个按钮 WPF--WrapPanel布局控件 WrapPanel(自动折行面板),允许任意多 ...

  2. WPF编程基础入门 ——— 第二章 XAML

    XAML 简述 XAML(eXtensible Application Markup Language,可扩展应用程序标记语言)是微软公司创建的一种新的描述性语言,用于搭建应用程序用户界面.XAML实 ...

  3. python快乐编程—基础入门-从萌新到大神必读书籍 《Python快乐编程基础入门》...

    2019年,全球信息化进程持续加快,IT行业繁荣发展.作为新时代IT人,不仅需要强大的理论知识,更需要过硬的技术.Python作为最受欢迎的编程语言之一,作为人工智能时代的首选语言,因其受众多.用途广 ...

  4. WPF 项目开发入门(三)WPF 窗体与页面

    WPF 项目开发入门(一) 安装运行 WPF 项目开发入门(二) WPF 页面布局 WPF 项目开发入门(三)WPF 窗体与页面 WPF 项目开发入门(四) MVVM 模式 与 TreeView树组件 ...

  5. 「Linux」Linux Shell 编程基础入门

    Linux Shell 编程基础入门 1. 变量 1.1 变量定义 1.2 使用变量 1.3 引号 1.4 将命令的结果赋值给变量 1.5 位置参数 1.6 特殊变量及其含义 2. 字符串 2.1 字 ...

  6. 程序员编程艺术:第三章续、Top K算法问题的实现

    程序员编程艺术:第三章续.Top K算法问题的实现 作者:July,zhouzhenren,yansha.     致谢:微软100题实现组,狂想曲创作组.     时间:2011年05月08日    ...

  7. 编程小白入门分享三:Spring AOP统一异常处理

    编程小白入门分享三:Spring AOP统一异常处理 参考文章: (1)编程小白入门分享三:Spring AOP统一异常处理 (2)https://www.cnblogs.com/lxk12345/p ...

  8. 计算机基础知识第三章答案,2011年河北省职称计算机模拟习题(基础知识第三章+标准答案)...

    2011年河北省职称计算机模拟习题(基础知识第三章+标准答案) 基础知识第三章 下列关于控制面板不正确的叙述是________. A.控制面板是一组系统管理程序 B.可以安装或删除系统的软件.硬件 C ...

  9. X Window 程式设计入门--第三章 绘图(Graphic)

    http://cnpa.yzu.edu.tw/~thinker 作者:李圭烽 (Thinker; Thinker.bbs@bbs.yzu.edu.tw) (2001-06-01 20:10:00) I ...

  10. 程序员编程艺术:第三章、寻找最小的k个数

    程序员编程艺术:第三章.寻找最小的k个数 作者:July. 时间:二零一一年四月二十八日. 致谢:litaoye, strugglever,yansha,luuillu,Sorehead,及狂想曲创作 ...

最新文章

  1. 【模板】Dijkstra
  2. MySQL数据库“十宗罪”(十大经典错误案例)
  3. thrift入门(1) -- 安装配置
  4. C语言学习之分别用if和switch编程,输入0-100分成绩,输出相应的成绩档次。
  5. 关于android 图像格式问题
  6. 消息队列 策略_太狠了!京东T8架构师建议吃透这40W字消息队列文档,涨薪15K不是梦...
  7. 同一解决方案内的多个项目之间如何引用?
  8. 读《自己动手写操作系统》
  9. property attribute: assign, strong, weak, unsafe_unretain and copy
  10. iOS-dSYM 文件分析工具
  11. 卷积神经网络识别车辆(自建+迁移学习)
  12. cocos creator--DragonBones 骨骼动画入门
  13. Python暴力破解ZIP文件密码
  14. 失控的热潮:为什么说特斯拉的“电池日”名副其实?
  15. 类人猿易语言云控系统开发 + 附加安卓模拟器中控+ 内存操控 系列课程
  16. 安卓自定义View进阶-Canvas之图片文字
  17. WordPress站点快速集成腾讯数字身份管控平台CIAM,免开发实现登录认证
  18. MMKV的简单实用一
  19. 计算机的击键方法教学教案,初中七年级信息技术上册教案:键盘操作与练习
  20. BAPI上传物料主数据

热门文章

  1. iOS关于上传iTunes store一直卡住终极解决方案
  2. 翻译任务中的BPE词表实践总结
  3. webstorm 下载安装教程
  4. visio阵列_什么软件可以画这种图,Visio怎么画?
  5. 处女座的比赛资格(拓扑排序)
  6. 处女座的约会(思维)
  7. UnityWebRequest下载文件
  8. 淘宝类目运营方法 怎么快速获取流量和销量
  9. 一个APP从启动到主页面显示经历了哪些过程?跳槽薪资翻倍
  10. 百套Java实战项目