如何叠加窗口上的控件?

问题描述:

现在我有一个正常的窗口与一堆控件。如何叠加窗口上的控件?

当用户点击某个按钮时,我想调暗整个窗口,然后在其上显示一个弹出窗口。不是一个真正的对话框,只是窗口内的东西。

所以这是我的理论......

  1. 每个控件是0层
  2. 有一个矩形的大小在1层这有50%的透明度形式相同。
  3. 我的弹出窗口已加载到第2层。
  4. 单击矩形上的任何位置都会执行与弹出窗口上的关闭操作相同的操作。

这可能吗?

这是完全可能的。

将您的整个用户界面放在<Grid>的任何面板中。

然后,在同一个网格中,为覆盖图放置一个<Rectangle Opacity=".5" Visibility="Collapsed" />,并为弹出窗口放置一个居中的面板。

处理矩形的单击事件并隐藏弹出窗口。

+0

这就像一个魅力。 – 2010-07-18 22:00:22

+1

@SLaks我只需要添加'',因为当我将'Visibility'更改为'Visible'时,看不到Rectangle。我如何让矩形填满整个窗口? – MattC 2012-03-27 18:22:13