【发布时间】:2015-07-31 07:49:47
【问题描述】:
我知道DockPanel 子元素的顺序很重要。我在某处读到,孩子的布局是根据所有先前孩子已经定位后剩余的可用空间来确定的。以这段代码为例:
<DockPanel>
<Button DockPanel.Dock="Bottom" Height="20" Content="MyButton"/>
<DataGrid Name="dataGrid" ItemsSource="{Binding CarList.Items}"/>
</DockPanel>
我得到如下图所示的结果,其中我的按钮按预期停靠在 底部:
现在,如果我像这样更改子元素的顺序:
<DockPanel>
<DataGrid Name="dataGrid" ItemsSource="{Binding CarList.Items}"/>
<Button DockPanel.Dock="Bottom" Height="20" Content="MyButton"/>
</DockPanel>
布局变得奇怪:
不管我的 Button 使用了剩余的可用空间,它至少不应该停靠在这个空间的底部吗?
【问题讨论】:
-
这是excellent tutorial 上的
DockPanel。享受吧。
标签: wpf user-interface wpf-controls dockpanel