15

在 WPF 的窗口中水平排列按钮的最佳控件是什么?在调整窗口大小时,我无法均匀地排列按钮。我尝试使用堆栈面板,但按钮只是停留在它们的位置,并且不会留出空间来填充窗口空间。也尝试使用停靠面板,但还没有运气。

任何人都可以建议我一个好方法,或者告诉我我是否做错了什么?

4

3 回答 3

22

Grid或者,甚至更容易,怎么UniformGrid样?

于 2009-12-15T20:44:38.423 回答
6

我想看一个例子,说明如何轻松地让 UniformGrid 等间距按钮,如果它们旨在保持其“自然”宽度而不是被迫具有统一的宽度。

与此同时,也许这不是最好的解决方案,但它似乎对我有用,并且可能会帮助下一个人:

<Grid.ColumnDefinitions>
  <ColumnDefinition Width="Auto" />
  <ColumnDefinition Width="*" />
  <ColumnDefinition Width="Auto" />
  <ColumnDefinition Width="*" />
  <ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>

<Button x:Name="FirstBtn" Grid.Column="0" Content="_First" />
<!-- Skip column 1 so it will provide flexible space -->
<Button x:Name="SecondBtn" Grid.Column="2" Content="_Second" />
<!-- Skip column 3 -->
<Button Name="ThirdBtn" Grid.Column="4" Content="_Third" />
于 2019-08-09T17:57:35.070 回答
4

你在做什么错?您忽略了 WPF 中布局系统上的 MSDN 部分:)。

您可以使用 Grid 并将按钮的 Horizo​​ntalAlignment/VerticalAlignment 设置为 Center,并且网格列宽应为 *。

于 2009-12-15T20:46:25.593 回答