MDI Windows с несколькими MDIChields в разных WindowState - PullRequest
0 голосов
/ 09 сентября 2011

У меня небольшая проблема с моим родительским окном MDI и дочерним окном MDI. Проблема в том, что мне нужно 3 дочерних окна, но только первое оно будет развернуто, поэтому я использую этот код:

UserAdmin usrWindow = new UserAdmin();
usrWindow.MdiParent = this;
usrWindow.WindowState = FormWindowState.Normal;
usrWindow.Show();

Для остальных 2 окон я использую этот код:

TaskAdmin tskWindow = new TaskAdmin ();
tskWindow.MdiParent = this;
tskWindow.Show();

Мне нужно только, чтобы первые окна были развернуты максимально, но когда я открываю другие, они открываются также максимально.

Как я могу открыть один максимизированный и другие в размере по умолчанию над первым?

Спасибо

Ответы [ 2 ]

0 голосов
/ 16 сентября 2011

Ваши формы TaskAdmin не могут иметь MDIParent в этой ситуации. Вам нужно либо поместить эти формы поверх MDIParent, либо поместить их на панели в MDIParent, пристыкованные к боковой поверхности.

0 голосов
/ 09 сентября 2011

Это невозможно, но может быть достигнуто с помощью очень очень сложного (с использованием переопределения WndProc, пользовательских циклов событий) и некрасивого кода, который не будет работать в разных операционных системах одинаково (например, WinXP / WinXPSP1 / WinXPSP3 / Vista /Win7)

...