1
9
有几种方法可以做到这一点: 1)使用网格进行布局。每个按钮都有自己的列,它是星形的。这样,所有列的大小都相同:
2)您可以将一个项目作为“主尺寸”,并将所有其他项目的宽度绑定到此项目的宽度。
编辑: 在实际代码中,您可能有width=“auto”。由于其他宽度基于“主控形状宽度”,因此应选择宽度最大(文本最宽)的按钮。 |
2
7
另一种可能更简单的方法是使用
WPF网格中的列(和行)可以自动调整大小以适应其内容-何时
XAML看起来像这样…
|
3
4
使用“master”控件,如Daniel的答案,但绑定到“actualWidth”属性而不是“width”:
这样,在考虑了最小和最大宽度以及所有其他布局计算之后,在运行时从主控件中获取值。绑定到“width”将绑定到您在编译时放入属性的任何内容,这可能不是实际使用的宽度。 此外,可以将绑定写得更短,如
|
4
2
根据Windows7和WindowsVista(p61)的MS用户体验交互指南,命令按钮的标准尺寸为50x14 DLU实际尺寸(75x23像素)。指南还建议您“尝试使用[这些]默认的宽度和高度”。显然,如果您需要更大的宽度来适应清晰的标签,则需要更大的宽度。 |
5
0
在最一般的情况下,您希望创建一个 在分区中设置样式,然后根据需要应用此样式。现在,当您更改样式时,所有按钮都会更改。 也可以更改按钮的内容,使其自动调整为文本。 |
6
0
如果你有一个固定的按钮编号或固定的布局,这些答案是很好的,但是如果像我一样,有一个动态的按钮编号来自绑定并包含在
DataTemplate:
父容器:
本质上,按钮的内容本身可以是一个网格,然后您可以根据需要放置标签和图标,但即使按钮不在同一个网格中(它们各自都是自己的),只要设置根容器的(
这将强制每个按钮的内容网格根据最大的按钮保持相同的精确大小,而不必将按钮本身放在预定义的网格中。 |
Devang Sanghani · 柏树检查线通过 2 年前 |
Brendan · 如何在Flatter中创建圆形化身周围的虚线边框 2 年前 |
Shadow43375 · 当前可见的视口部分是否有官方术语? 6 年前 |
HyperQBE · 如何在pyqt MessageBox中使用变量 6 年前 |
Lord Jesus · 如何添加“HH:mm:ss”格式的秒表? 6 年前 |