DockPanel.Dock =“右”不适用于最大化窗口的单一控件?
我正在使用DockPanel.Dock在特定位置(即左/右)进行对接控制。 问题是我的控件没有根据DockPanel.Dock位置对接。
下面是使用DockPanel.Dock="Right"
进行单一控制的代码
DockPanel.Dock="Right"
多个控件的代码
期待输出:
任何想法或想法将不胜感激。 提前致谢
您应该使用LastChildFill
属性:
发生这种情况是因为DockPanel
的LastChildFill
属性默认为true
。 要获得所需的输出, 请将其设置为false
。
根据MSDN
:
如果将LastChildFill属性设置为true(默认设置),则DockPanel的最后一个子元素始终填充剩余空间,而不管您在最后一个子元素上设置的任何其他停靠值。 要将子元素停靠在另一个方向上,必须将LastChildFill属性设置为false,并且还必须为最后一个子元素指定显式停靠方向。
使用DockPanel的示例UI和XAML:
Dock = "Top" Dock = "Top" Dock = "Bottom" Dock = "Left" This content will "Fill" the remaining space
如果您不想要上述行为,请在上面的XAML示例中设置LastChildFill =“False”并观察结果。
如下所述,添加HorizontalAlignment =“Right”