Является ли Visual Studio интерфейсом из нескольких документов? - PullRequest
1 голос
/ 01 сентября 2009

Другими словами, если я хочу написать приложение winforms db с внешним видом, похожим на VS, с закрепленными панелями, а также возможностью отображать / скрывать формы в некоторых из этих панелей, как бы я структурировал интерфейс? Как бы у меня была возможность открывать несколько разнородных форм в разное время (с большими сетками данных на них), избегая при этом плавающих форм и эффективно используя память? Я хочу избежать плавающих окон.

Ответы [ 6 ]

2 голосов
/ 01 сентября 2009

В техническом смысле Visual Studio представляет собой приложение MDI, окна документа которого привязаны с помощью навигации по вкладкам.

MDI относится к «интерфейсу с несколькими документами» и относится к тому факту, что несколько открытых документов открыты и видны внутри большого родительского окна.

В современной области разработки приложений, как правило, не одобряли MDI, но это был MDI "старой школы" со свободно плавающими окнами. Это широко считается кошмаром юзабилити.

С другой стороны, MDI, реализованный в виде вкладок в родительском окне, настолько успешен с точки зрения пользовательского интерфейса, что даже среда, в которой традиционно не было MDI (EG, Mac OS), реализует их.

Чтобы реализовать что-то подобное, вы можете «свернуть свое» или использовать любой из множества пользовательских пакетов управления / API, которые позволят вам легко разрабатывать приложения MDI с интерфейсом с вкладками. Одной из последних вещей, которые я сделал с Infragistics NetAdvantage (перед тем, как отойти от нее), было приложение, вдохновленное Visual Studio, с закрепленными боковыми панелями, результатами поиска в виде панели внизу и всеми основными формами данных в виде документов MDI с вкладками. (Действительно, WinForms - это одно из немногих мест, где светит инфраструктура.)

С точки зрения управления памятью, это будет на вас. :)

2 голосов
/ 01 сентября 2009

Visual Studio определенно является MDI

2 голосов
/ 01 сентября 2009

Прочтите эту статью, чтобы создать интерфейс, подобный VS:

Visual Studio IDE, например док-контейнер

Я сам не пробовал компонент, но выглядит интересно.

1 голос
/ 01 сентября 2009

Я думаю, что технически Visual Studio классифицируется как MDI.

Основная форма содержит разные элементы управления. Каждый из этих элементов управления может быть при необходимости закреплен и т. Д. Visual Studio, например, имеет один элемент управления (с несколькими вкладками) для отображения документов, которые вы редактируете. Единый элемент управления с несколькими вкладками, который содержит (например, Solution Explorer, Properties и т. Д. И т. Д.)

В качестве отправной точки для создания собственного интерфейса в стиле IDE, я бы создал форму с 5 панелями, одна пристыкована сверху, одна слева, одна справа, одна снизу и одна заливка. Это ваша отправная точка. Добавьте разделительные полоски, чтобы можно было изменять размеры панелей. Каждая панель может содержать элемент управления Tab, а каждая вкладка содержит «MdiBaseControl»

MdiBaseControl может быть любым, что вы хотите. Так что в терминах VS у вас есть такие вещи, как SolutionExplorer, Properties, точки останова, FindResults и т. Д. Каждый MdiBaseControl можно перетащить из текущей вкладки и поместить в любую из закрепленных панелей (которая затем добавляет его в элемент управления Tab в качестве новой вкладки)

0 голосов
/ 01 сентября 2009

Я только что заметил, что Developer Express имеет некоторые элементы управления для создания интерфейсов в стиле IDE.

0 голосов
/ 01 сентября 2009

В обоих интерфейсах можно одновременно видеть несколько форм, но в MDI все свободно перемещается.В этом смысле Visual Studio является SDI.

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