WPF在叠加层中制作导航面板(在其他内容之前)

时间:2010-01-24 19:14:05

标签: wpf layout navigation panel

我有一个小型WPF应用程序,我正在显示图像。我想在底部有一种透明的导航面板,我有几个小按钮(左/右旋转,平移等)。但是如何在图像前面制作导航面板?我试过一个有两行的网格,但显然导航面板没有悬停在图像的“顶部”,而是在下面的行中。有什么想法吗?

编辑:解决方案是制作另一个窗口并放置一个窗口吗?或者它可以在同一个网格内完成吗?

编辑它就像Windows Vista / 7底部的工具栏一样,你可以通过它看到窗口“后面”。

3 个答案:

答案 0 :(得分:1)

尝试只有1行的网格,并将导航栏对齐到底部,并赋予其不透明度以使其半透明。

<Grid>
    <Image.../>
    <Grid Name="NavBar" VerticalAlignment="Bottom" Opacity="50%">...</Grid>
</Grid>

答案 1 :(得分:1)

使用2 RowDefinitions保留现有布局,但在Image元素上设置Grid.RowSpan =“2”。还要确保按钮的Buttons或容器要么在Image之后声明,要么在它们上面设置更高的Panel.ZIndex值。

答案 2 :(得分:0)

不确定这是否是您要找的,但我会试一试。也许您可以查看一下Adorners MSDN link,它允许您在现有内容之上放置渲染表面/图层。通过一些小技巧,您可以使此渲染表面半透明或添加其他效果。 Adorners是保持渲染非常干净的好方法,因此您可以将所有花哨的东西保留在adorner图层中,让图像显示代码保持不变。

只是我的两分钱......

相关问题