WPF DockPanel布局如何实现长尾词疑问,让界面布局更灵活?
- 内容介绍
- 文章标签
- 相关推荐
本文共计659个文字,预计阅读时间需要3分钟。
%E2%80%9CDockPanel%3A%E5%81%9C%E9%9D%A0%E9%9D%A2%E6%9D%BF%E6%98%AF%E4%B8%80%E4%B8%AA%E5%9F%9F%E5%9F%9D%E7%9A%84%E5%AE%9A%E4%B9%89%EF%BC%8C%E5%9C%A8%E8%AF%A5%E5%9F%9F%E5%9F%9D%E4%B8%AD%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E6%8F%8F%E7%82%B9%E5%BD%A2%E5%BC%8F%E6%8E%92%E5%88%97%E5%AD%90%E5%85%83%E7%B4%A0%EF%BC%8C%E8%BF%99%E4%BA%9B%E5%AD%90%E5%85%83%E4%BD%8D%E4%BA%8EChildren%E5%B1%9E%E6%80%A7%E4%B8%AD%E3%80%82%E5%81%9C%E9%9D%A0%E9%9D%A2%E6%9D%BF%E7%B1%BB%E4%BC%BC%E4%BA%8EWinForm%E4%B8%AD%E6%8E%A7%E4%BB%B6%E7%9A%84Dock%E5%B1%9E%E6%80%A7%E2%80%9D
DockPanel:停靠面板
DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。停靠面板类似于WinForm中控件的Dock属性。DockPanel会对每个子元素进行排序,并将根据指定的边进行停靠,多个停靠在同侧的元素则按顺序排序。在DockPanel中,指定停靠边的控件,会根据定义的顺序占领边角,所有控件绝不会交叠。
默认情况下,后添加的元素只能使用剩余空间,无论对DockPanel的最后一个子元素设置任何停靠值,该子元素都将始终填满剩余的空间。如果不希望最后一个元素填充剩余区域,可以将DockPanel属性LastChildFill设置为false,还必须为最后一个子元素显式指定停靠方向。
1、填充整个剩余空间
使用XAML代码实现:
<Window x:Class="WpfDemo.MainWindow" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen"> <DockPanel> <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button> <Button DockPanel.Dock="Top" Content="ButtonTop"></Button> <Button DockPanel.Dock="Right" Content="ButtonRight"></Button> <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button> <Button Content="ButtonTop"></Button> </DockPanel> </Window>
2、最后元素不填充剩余空间
使用XAML代码实现:
<Window x:Class="WpfDemo.MainWindow" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen"> <DockPanel LastChildFill="False"> <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button> <Button DockPanel.Dock="Top" Content="ButtonTop"></Button> <Button DockPanel.Dock="Right" Content="ButtonRight"></Button> <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button> <Button DockPanel.Dock="Top" Content="最后一个Button不填充剩余空间"></Button> </DockPanel> </Window>
到此这篇关于WPF使用DockPanel停靠面板布局的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持自由互联。
本文共计659个文字,预计阅读时间需要3分钟。
%E2%80%9CDockPanel%3A%E5%81%9C%E9%9D%A0%E9%9D%A2%E6%9D%BF%E6%98%AF%E4%B8%80%E4%B8%AA%E5%9F%9F%E5%9F%9D%E7%9A%84%E5%AE%9A%E4%B9%89%EF%BC%8C%E5%9C%A8%E8%AF%A5%E5%9F%9F%E5%9F%9D%E4%B8%AD%E5%8F%AF%E4%BB%A5%E9%80%9A%E8%BF%87%E6%8F%8F%E7%82%B9%E5%BD%A2%E5%BC%8F%E6%8E%92%E5%88%97%E5%AD%90%E5%85%83%E7%B4%A0%EF%BC%8C%E8%BF%99%E4%BA%9B%E5%AD%90%E5%85%83%E4%BD%8D%E4%BA%8EChildren%E5%B1%9E%E6%80%A7%E4%B8%AD%E3%80%82%E5%81%9C%E9%9D%A0%E9%9D%A2%E6%9D%BF%E7%B1%BB%E4%BC%BC%E4%BA%8EWinForm%E4%B8%AD%E6%8E%A7%E4%BB%B6%E7%9A%84Dock%E5%B1%9E%E6%80%A7%E2%80%9D
DockPanel:停靠面板
DockPanel定义一个区域,在此区域中,您可以使子元素通过描点的形式排列,这些对象位于 Children 属性中。停靠面板类似于WinForm中控件的Dock属性。DockPanel会对每个子元素进行排序,并将根据指定的边进行停靠,多个停靠在同侧的元素则按顺序排序。在DockPanel中,指定停靠边的控件,会根据定义的顺序占领边角,所有控件绝不会交叠。
默认情况下,后添加的元素只能使用剩余空间,无论对DockPanel的最后一个子元素设置任何停靠值,该子元素都将始终填满剩余的空间。如果不希望最后一个元素填充剩余区域,可以将DockPanel属性LastChildFill设置为false,还必须为最后一个子元素显式指定停靠方向。
1、填充整个剩余空间
使用XAML代码实现:
<Window x:Class="WpfDemo.MainWindow" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen"> <DockPanel> <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button> <Button DockPanel.Dock="Top" Content="ButtonTop"></Button> <Button DockPanel.Dock="Right" Content="ButtonRight"></Button> <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button> <Button Content="ButtonTop"></Button> </DockPanel> </Window>
2、最后元素不填充剩余空间
使用XAML代码实现:
<Window x:Class="WpfDemo.MainWindow" xmlns="schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="schemas.microsoft.com/winfx/2006/xaml" Title="DockPanel面板" Height="237" Width="525" WindowStartupLocation="CenterScreen"> <DockPanel LastChildFill="False"> <Button DockPanel.Dock="Left" Content="ButtonLeft"></Button> <Button DockPanel.Dock="Top" Content="ButtonTop"></Button> <Button DockPanel.Dock="Right" Content="ButtonRight"></Button> <Button DockPanel.Dock="Bottom" Content="ButtonBottom"></Button> <Button DockPanel.Dock="Top" Content="最后一个Button不填充剩余空间"></Button> </DockPanel> </Window>
到此这篇关于WPF使用DockPanel停靠面板布局的文章就介绍到这了。希望对大家的学习有所帮助,也希望大家多多支持自由互联。

