Разработка приложения winform / избегать модальной модели - PullRequest
0 голосов
/ 16 августа 2011

Я должен поддерживать приложение winform.

Состоит из последовательности модальных окон. (например: на некоторых экранах у меня может быть 5 модальных экранов и много проблем).

Я хотел бы перейти с модального окна на другую модель, но не хочу использовать стиль MDI (это займет слишком много времени).

Я бы хотел создать класс (все формы наследуются от этой формы). В конструкторе мы предоставили бы в параметре родительскую форму, и она обработала бы, скрыть / показать. Эта базовая конструкция должна работать, но я должен обработать событие закрытия формы.

У кого-нибудь есть решение?

Ответы [ 3 ]

2 голосов
/ 16 августа 2011

Может ли дочерняя и родительская формы иметь одинаковый размер?Если да, то вместо того, чтобы скрывать / показывать формы, я бы подумал о том, чтобы иметь несколько панелей друг над другом и использовать BringToFront, чтобы показать, какая из них является текущей.Это кажется мне чище и менее болезненным, чем возиться с волшебными окнами ...

Если вы делаете ходите с волшебными окнами, вы не забудете поиграть с шоу в'свойство панели задач.

(Наличие окон, которые открываются и закрываются "автоматически" и имеют разные размеры, также может быть довольно раздражающим для пользователя)

2 голосов
/ 16 августа 2011

Другими парадигмами, которые приходят на ум для такого вида пользовательского интерфейса, являются мастера, которые ведут вас от одной формы к другой, или пользовательский интерфейс, в котором каждая из ваших текущих модальных форм отображается как расширяемые области одного пользовательского интерфейса.

1 голос
/ 16 августа 2011

Как насчет того, чтобы держать где-то ссылку на все формы, обозначенные как дети? Когда ваше родительское окно начинает закрываться, сначала закройте дочерние. Что-то в этом роде.

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