control.Show和BringToFront有什么区别?
Show / Hide和BringToFront / SendToBack有什么区别? 在哪种情况下我们应该使用一对而不是另一对?
这些是完全不同的方法。
Show()
:通过初始化之前的内容来显示视图上的控件。
BringToFront
和SendToBack
就该控件的Z-order
其他操作。 但控制已经可见。
来自MSDN的BringToFront的提示:
将控件置于z顺序的前面。
并在显示 :
向用户显示控件。
Show()
等效于设置Visible = true
。 它不会改变控件的Z顺序。 如果控制由Z顺序前面的某个其他控件关闭,用户仍然无法看到您的控件。
BringToFront()
改变控件的Z顺序(带到前面),但不会改变它的可见性。 如果隐藏了控件,那么它将保持隐藏状态。 但是当您使控件可见时,它将显示在所有其他控件的前面。
与Hide()
相同(使控件不可见,但不会更改Z顺序)和SendToBack
(不会更改可见性,但会将控制权返回)。
显示/隐藏将在屏幕上显示或隐藏控件。 基本上它使它可见或不可见。
BringToFront / SendToBack将更改其“z”顺序。 如果标签下方有一个按钮,并且您在按钮上调用“BringToFront”,则该按钮现在将隐藏标签。
BringToFront只是在其他控件前面移动一个控件(换句话说,它将覆盖另一个控件),SendToBack将允许其他控件覆盖它,而Show / Hide实际上将完全显示/完全隐藏用户的控件。
通常,您希望显示/隐藏控件