gpt4 book ai didi

WPF 对齐拉伸(stretch)

转载 作者:行者123 更新时间:2023-12-04 14:43:17 26 4
gpt4 key购买 nike

谁能帮我理解 WPF 拉伸(stretch)对齐。我经常遇到这样的问题,我想要一个控件来填充一个区域,但我从来不明白我应该把 VerticalAlignment="Stretch"放在什么级别。特别是当涉及到用户控件时。

我总是通过尝试不同的事情或在各个层面上进行拉伸(stretch)来解决问题,但我想了解如何正确地做到这一点。

让我们以我现在得到的例子为例:

  • 我有一个带有固定大小单元格的网格(可以使用 GridSplitter 调整大小)
  • 在这个单元格中,我有一个 UserControl,其中包含一个带有 TabControl 的 StackPanel
  • 在 TabControl 中,我有包含另一个带有 ListView 的 UserControl 的 TabItems

或者在某种伪 XAML 中

<ns:MyUserControl1 Grid.Row="0" Grid.Column="0">
<!-- this is in MyUserControl1 -->
<StackPanel>
<TabControl>
<TabItem>
<ns:MyUserControl2>
<!-- This is in MyUserControl2 -->
<ListView/>
</ns:MyUserControl2>
</TabItem>
</TabControl>
</StackPanel>
</ns:MyUserControl>

现在我希望 ListView 填充整个网格单元格(当然不包括 TabControl 和边距)。

最佳答案

您的 ListView 将填充您的 MyUserControl2 - 如果您希望它适合整个选项卡,您需要确保删除 UserControl 的 xaml 文件中的高度和宽度约束(这些将默认为每个 300)

编辑:抱歉 - 我跳过了您的 xaml 的重要部分...MyUserControl1 容器是一个 StackPanel...这将堆叠子控件并调整大小以适合它们;如果您用 DockPanel(或 Grid)替换它,子控件将填充可用空间并为您提供您想要的结果...

看看this msdn 文章...希望这有帮助:)

关于WPF 对齐拉伸(stretch),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1831286/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com