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

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

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

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

隐藏控件等同于将Visible属性设置为false。

您可以使用reflection器确认:

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

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

使用你喜欢的任何东西, Hide()Visible ,但我找不到任何理由更喜欢其中一个,除非你试图检查控制可见性状态,所以你应该说if(pic.Visible)和在这种情况下你不能使用方法Hide()你应该使用属性Visible

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

我更喜欢调用方法,它们说明了他们正在做什么来改变对象的状态。 有些人更喜欢设置对象的属性。