似乎 GroupBox 只能包含一个元素,如果我放置多个元素,它就不会进入内部(或在混合中被删除)。
这是设计使然还是我做错了什么?
这听起来对我来说是正确的。您需要将 Grid 或 Panel(StackPanel、WrapPanel 等)作为子项来定义布局。
是的,在 WPF 中,GroupBox 最多包含 1 个元素。您可以将 Grid 作为其子项,并在 grid 中指定所需的组件。例如 1 使用 Grid 在 GroupBox 中放置了两个按钮。
文件大纲如下图:
代码如下:
<GroupBox
Header="Read Sensor"
HorizontalAlignment="Left"
Margin="485,4,0,0"
VerticalAlignment="Top"
Height="188"
Width="238">
<Grid
HorizontalAlignment="Left"
Height="169"
Margin="0,0,-13,-3"
VerticalAlignment="Top"
Width="229">
<Button
x:Name="btnReadSensor1"
Content="Read Sensor 1"
HorizontalAlignment="Left"
Margin="10,91,0,0"
VerticalAlignment="Top"
Width="207"
Click="btnReadSensor1_Click" />
<Button
x:Name="btnReadSensor2"
Content="Read Sensor 2"
HorizontalAlignment="Left"
Margin="10,64,0,0"
VerticalAlignment="Top"
Width="207"
Click="btnReadSensor2_Click" />
</Grid>
</GroupBox>
那么真正的答案是因为 groupbox 继承自 HeaderedContentControl
看看这里 MSDN
您必须将项目:文本框拖入组框,并且必须只有一个组框。每个线性坐标不能拖动多个组框以使其工作。一个页面上可以有多个分组框,但不能超过一列宽,否则您将受到限制,只能将单个项目添加到分组框中。