Как я могу установить размер базы дочерней формы из свободного пространства формы контейнера mdi в С#?

Моя проблема в том, что я хочу, чтобы дочерняя форма занимала свободное пространство контейнера MDI.

Вот код, который я пробовал

В моем событии загрузки формы контейнера MDI у меня есть эта строка кода, вызывающая дочернюю форму

childform = new ppt.MyChildForm();
            childform.MdiParent = this;
            childform.Size = childform.MdiParent.ClientSize;
            childform.Show();

Но что случилось, я думаю, что дочерняя форма больше, чем ее родитель, потому что она содержит полосу прокрутки, как я могу это исправить?

введите здесь описание изображения


person GrayFullBuster    schedule 20.12.2012    source источник
comment
AutoScrollMargin равен 0, свойство Containers Dock?   -  person GrayFullBuster    schedule 20.12.2012
comment
да, нет свойства дока в дочерней форме?   -  person GrayFullBuster    schedule 20.12.2012
comment
Я думаю, что AutoSize переопределяет свойство Size. Что касается Dock, установите для свойства Dock дочерней формы значение Dock.Fill, и она будет занимать весь клиентский размер своего родителя.   -  person RoadBump    schedule 20.12.2012
comment
childform.Dock = DockStyle.Fill?   -  person GrayFullBuster    schedule 20.12.2012
comment
Да. (Надо написать 15 символов...)   -  person RoadBump    schedule 20.12.2012


Ответы (1)


Если для свойства AutoSize задано значение true, изменение Size не имеет никакого эффекта.
Лучше всего установить для свойства Dock дочерней формы значение DockStyle.Fill. Он всегда будет заполнять весь размер клиента своего родителя, поэтому вам не нужно беспокоиться об изменении размера родителя.

person RoadBump    schedule 20.12.2012