控制Hide()和Visible之间的区别?

时间:2010-08-30 12:38:13

标签: c# winforms controls

我想知道使用Control的Hide()方法与将Visible属性设置为false之间的区别。

我什么时候想要使用另一个?

3 个答案:

答案 0 :(得分:35)

它们是等价的。来自Control.Hide的文档:

  

隐藏控件相当于   将Visible属性设置为false。

您可以使用反射器确认:

public void Hide()
{
    this.Visible = false;
}

当您知道值时可以使用Show()或Hide(),并在将可见性作为参数时使用Visible,尽管我个人总是使用Visible。

答案 1 :(得分:4)

使用您喜欢的任何内容,Hide()Visible,但除非您尝试检查控件可见性状态,否则我找不到任何理由更喜欢其中一个,因此您应该说{ {1}}在这种情况下,您无法使用方法if(pic.Visible)您应该使用属性Hide()

答案 2 :(得分:0)

这更像是你的偏好。这两种方法将以相同的方式实现相同的结果。

我更喜欢调用方法,这些方法说明了他们为改变对象状态所做的工作。有些人更喜欢设置对象的属性。