【问题标题】:C# WPF - Docked top and bottom but expandable middle sectionC# WPF - 顶部和底部停靠但可扩展的中间部分
【发布时间】:2014-02-21 19:25:37
【问题描述】:

我有一个 WPF 窗口,顶部有一个“设置”菜单选项,底部有一个“下一个”和“上一个”按钮。在窗口中间,我在选项卡控件周围有一个滚动查看器,以防选项卡控件中的数据超过窗口高度。但是,如果用户最大化他们的窗口,我想让 m WPF 移动底部的按钮并展开中间。

关于从哪里开始有什么建议吗?

【问题讨论】:

  • 您使用的是什么类型的布局? Grid?
  • 是的。整个 WPF 位于一个 Grid 中,第一行是导航按钮,另一行是 WPF,第三行是 Next 按钮。
  • 你应该能够使第二行的高度可扩展,我刚刚发布了一个答案来说明如何。
  • "...另一个中的 WPF..." 所以Buttons 不是 WPF?抱歉,只是搞笑。

标签: c# wpf dock


【解决方案1】:

如果我正确理解您的问题,您希望窗口的顶部和底部保持固定大小,但在窗口展开时允许中间部分增大?如果您使用的是Grid 布局,那么您可以通过以下方式实现:

<Grid>
  <Grid.RowDefinitions>
    <RowDefinition Height="30" />
    <RowDefinition Height="1*" />
    <RowDefinition Height="30" />
  </Grid.RowDefinitions>
  <your controls go here>
</Grid>

.. 将您的控件放在这里,第 0 行应该是顶部的菜单选项,第 1 行是会随着窗口大小而增长的中间部分,第 2 行将是包含Button 控件的底部行。

【讨论】:

    【解决方案2】:

    不必固定第一行和最后一行的宽度,设置为“自动”会将行高调整为该行内控件的高度。中间的行 height="*" 会使其扩展到可用高度。

    <Grid>
      <Grid.RowDefinitions>
        <RowDefinition Height="Auto" />
        <RowDefinition Height="*" />
        <RowDefinition Height="Auto" />
      </Grid.RowDefinitions>
      <Button Grid.Row="0" />
      <Button Grid.Row="1" VerticalAlignment="Stretch" /> <!-- Will take available space -->
      <Button Grid.Row="2" />
    </Grid>
    

    【讨论】:

    • 谢谢! 是我一直在寻找的。​​span>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-01-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-22
    • 1970-01-01
    相关资源
    最近更新 更多