Меню приложения Winforms и пользовательский интерфейс приложения - PullRequest
1 голос
/ 21 августа 2009

Я работаю над небольшим приложением WinForm и безуспешно пытаюсь найти ответы на несколько вопросов, которые у меня есть. Я разработчик ASP.NET, поэтому разработка WinForms для меня нова.

Вот мой главный вопрос:

Как создать систему меню, которая после выбора содержимого будет отображаться в главной форме выбранного элемента. Если это GridView, я хочу, чтобы GridView отображался внутри основного приложения, чтобы они могли перемещаться без необходимости иметь дело с модальным всплывающим окном. Я не хочу, чтобы всплывающие формы, если я не говорю об этом прямо. Я предполагаю, что эквивалентом этого будет использование главной страницы в ASP.NET.

Имеет смысл?

Ответы [ 2 ]

1 голос
/ 21 августа 2009

Самым близким к главным страницам в winforms будет MDI (многодокументный интерфейс), который представляет собой отвратительный аборт пользовательского интерфейса в Windows 3.1. Почему эта опция все еще существует, и почему кто-то все еще ее использует, мне не понятно.

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

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

0 голосов
/ 21 августа 2009

На самом деле нет ничего похожего на мастер-страницы в WinForms.

Ближе всего к тому, что вы хотите использовать, будет TabControl, при выборе другой вкладки эта вкладка будет отображаться над другими вкладками. Если вам не нравится внешний вид вкладок, вы можете расширить TabControl, чтобы он не отображал вкладки, или взломать их вместе, поместив TabControl внутри панели, достаточно большой для отображения содержимого, но не вкладок и программных изменений вкладок в элементе управления меню.

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