Мне было интересно узнать о различии между использованием метода Controls Hide() по сравнению с установкой свойства Visible в значение false.
Когда я хочу использовать одно над другим?
Ответ 1
Они эквивалентны. Из документации для Control.Hide:
Скрытие элемента управления эквивалентно установив для свойства Visible значение false.
Вы можете подтвердить это с помощью отражателя:
public void Hide()
{
this.Visible = false;
}
Вы можете использовать Show() или Hide(), когда знаете значение и используете Visible, когда вы используете видимость в качестве параметра, хотя лично я всегда буду использовать Visible.
Ответ 2
Используйте все, что вам нравится, Hide() или Visible, но я не могу найти повода для предпочтения одного из них, кроме случаев, когда вы пытаетесь проверить статус видимости элемента управления, поэтому вы должны сказать if(pic.Visible) и в в этом случае вы не можете использовать метод Hide(), вы должны использовать свойство Visible
Ответ 3
Это действительно больше о ваших предпочтениях здесь. Этим же способом оба метода достигнут одинакового результата.
Я предпочитаю вызывать методы, которые говорят, что они делают, чтобы изменить состояние объектов. Некоторые люди предпочитают устанавливать свойства объекта.