5

我以编程方式在堆栈面板中添加了一些控件。我想要做的是我希望这个堆栈面板中的一个控件被放置在另一个控件上。具体来说,我想在此堆栈面板中的图像上放置按钮。我在 c# 代码隐藏中找不到 zindex 属性。虽然这似乎很简单的问题,但我无法找到任何线索来解决这个问题。有人请......??

4

3 回答 3

7

尝试将所有控件放在 Canvas 上。然后你可以设置 Zindex :

this.controlName.SetValue(Canvas.ZIndexProperty, 10d);
于 2009-11-26T08:46:11.930 回答
3

只有Canvas面板支持ZIndex属性。Stackpanel 不会,因为每个项目在面板中一个接一个地放置,因此它们不应相互重叠。当您使用动画变换移动项目时,这有时会有点烦人,因为之前的假设实际上并不正确。

一般来说,如果您需要将项目放置在可视堆栈中,则 Stackpanel 不适合它。也许 aCanvas或者您可以使用 aGrid元素的原始位置决定了它在单元格中的“zorder”。

于 2009-11-26T09:02:21.303 回答
2

来自 xaml:

<StackPanel Canvas.ZIndex="1">
</StackPanel>
于 2012-05-24T10:13:10.787 回答