带有用户控件的 WPF 布局有问题
Having Trouble With WPF Layout with user controls
我目前正在尝试让三个用户控件一起工作,我有一个停靠面板,我也正在添加它。但是我无法获得完美的布局,我宁愿不在用户控件 2 中添加用户控件 1。
编辑: 假设图像拼写为 Achieve 而不是 Acheive。
如果您希望控件 1 高于 控件 2 而不是包含在其中,请将它们放在一个网格中并给控件 1 更高的 ZIndex:
<Grid>
<Control1 Grid.ZIndex="2" />
<Control2 Grid.ZIndex="1" />
<Control3 Grid.ZIndex="1" />
</Grid>
Here is the MSDN供参考。
不,如果不进行丑陋的边距操作,您将无法在 DockPanel 中执行此操作。 1 和 2 应该在 Canvas:
<Canvas x:Name="canvas">
<Grid>
<!-- usercontrol 1-->
<TextBlock Text="1"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
<DockPanel Background="Transparent"
Height="{Binding ActualHeight, ElementName=canvas}"
Width="{Binding ActualWidth, ElementName=canvas}">
<!-- usercontrol 2-->
<TextBlock Text="2"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</DockPanel>
</Canvas>
我目前正在尝试让三个用户控件一起工作,我有一个停靠面板,我也正在添加它。但是我无法获得完美的布局,我宁愿不在用户控件 2 中添加用户控件 1。
编辑: 假设图像拼写为 Achieve 而不是 Acheive。
如果您希望控件 1 高于 控件 2 而不是包含在其中,请将它们放在一个网格中并给控件 1 更高的 ZIndex:
<Grid>
<Control1 Grid.ZIndex="2" />
<Control2 Grid.ZIndex="1" />
<Control3 Grid.ZIndex="1" />
</Grid>
Here is the MSDN供参考。
不,如果不进行丑陋的边距操作,您将无法在 DockPanel 中执行此操作。 1 和 2 应该在 Canvas:
<Canvas x:Name="canvas">
<Grid>
<!-- usercontrol 1-->
<TextBlock Text="1"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</Grid>
<DockPanel Background="Transparent"
Height="{Binding ActualHeight, ElementName=canvas}"
Width="{Binding ActualWidth, ElementName=canvas}">
<!-- usercontrol 2-->
<TextBlock Text="2"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</DockPanel>
</Canvas>