显示和隐藏UserControls(BringToFront / SendToBack)

时间:2011-05-17 21:20:56

标签: c# wpf

我正在制作一个“棘手”的用户界面。我需要做的部分是轻松显示和隐藏各种UserControl。通常,一个控件将在需要时占据整个主窗口,另一个控件将隐藏。

在WinForms中,我曾经只使用SendToBack和BringToFront,并轻松显示我想要显示的控件。现在我不知道了。玩zorder,但似乎没有用。

我想也许可以在主窗口上放置我想要的所有控件,然后以编程方式调整它们的大小并删除未使用的控件......或者其他东西。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

您应该将Visibility属性设置为CollapsedHiddenVisbible,具体取决于您是要删除,隐藏还是显示控件。

由于@AresAvatar指出Collapsed完全删除控件所以它不占用空间,这意味着其他控件可能会在容器周围移动。如果元素的位置很重要,那么使用Hidden将是更好的选择。

MSDN上的

UIElement.Visibility Property
MSDN上的Visibility Enumeration