как передать управление внутри функции - PullRequest
0 голосов
/ 02 октября 2010

Привет всем, у меня есть проблема. Я хочу, чтобы в моей оконной форме было так много элементов управления (LAbel, textbox), как я могу отключить все элементы управления, когда моя форма загружается в один за другим и делает Visibilty False очень раздражающим для меня и после этогоЯ хочу передать элемент управления внутри функции и установить его ширину и высоту. Как я могу получить его?

Я использую функцию изнутри ниже, но не могу установить высоту и вес. Все поля LAB и текстовые поля принимают значения по умолчанию.

заранее спасибо

шашанк тяги

 public void Setlabel(Control ctl2)
    {
        Control lbl = (Control)ctl2;
        lbl.Visible = Visible;
        lbl.Size=new Size(123,123);
        lbl.Height = 40;
        //lbl.PreferredSize = new Size(100, 100);

    }

1 Ответ

1 голос
/ 02 октября 2010

Если вы хотите установить видимость для группы элементов управления, вы можете поместить их в тот же элемент управления Panel, а затем просто изменить свойство Visible этой панели.

Что касается другой части вашего вопроса, то предоставленный вами код должен работать, но если он будет вызван в нужное время. Вы должны понимать, что ваш элемент управления не может иметь ширину или высоту больше контейнера, в котором находится этот элемент управления. Например, если вы вызываете эту функцию в конструкторе, она не будет работать, потому что ваша форма еще не изменила свой размер и слишком мала, чтобы ваш элемент управления был достаточно большим. Вместо этого вам следует вызывать эту функцию либо для события Load вашей формы (при условии, что все контейнеры вашего элемента управления были загружены к этому времени), либо для события Resize вашей формы (но будьте осторожны с этим, поскольку оно также выполнить после изменения размера окна пользователем).
Конечно, вы также можете убедиться, что все элементы управления достаточно велики для изменения размера элемента управления, прежде чем изменять его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...