На самом деле, сложно разбить иерархию для организации большого количества предметов. Я не предпочел бы классическое выпадающее меню для огромного количества окон, потому что было бы еще сложнее отслеживать, где вы находитесь, чем в дереве (например, дерево позволяет вам просматривать несколько веток одновременно). Но вот несколько альтернатив:
Мне непонятно, как у вас получилось так много окон, но, возможно, это происходит из-за сочетания классов, представлений, контента и деталей, или из-за использования ориентированной на задачи структуры пользовательского интерфейса для чего-то слишком сложного (Более подробно об этом можно узнать на http://www.zuschlogin.com/?p=3).. Для сложных приложений вам нужно отдельное главное окно для каждого значимого класса объекта данных (например, счета, сотрудники). Они перечислены в одном меню, и обычно их немного. Достаточно (15 или меньше), чтобы это могло быть одно не каскадное раскрывающееся меню.Контент каждого окна задается отдельным меню, возможно, с помощью пункта меню, который открывает диалоговое окно, которое может включать в себя список (например, диалоговое окно Открыть) или другие элементы управления для запроса / поиска. «Представление» каждого окна (как отображаются объекты данных, например, таблица в сравнении с формой) задается с помощью пунктов меню в меню «Просмотр». в отдельной панели в окне в отношении master-detail, по сути превращая ваши объекты данных в людей для деталей. Одно окно может иметь несколько панелей подробностей, чтобы пользователь мог открывать и закрывать для выбора конкретной детали для отображения. Вкладки могут также использоваться в пределах одной панели, чтобы соответствовать подразделам контента.
Вы говорите, что не важно показывать все параметры окна одновременно, но часто показывая все параметры одновременно, пользователям проще всего найти то, что им нужно. Возможно, вам нужно «домашнее» окно, в котором перечислены все другие окна в организованных, помеченных и разделенных категориях. Это будет проще в использовании, чем дерево, если ваши пользователи выбирают окно, а затем придерживаются его в течение большей части сеанса. Ваше дерево будет лучше, если в течение сеанса будет часто выбираться окно из-за накладных расходов, связанных с переходом к главному окну. Если все окна / опции не умещаются в одном главном окне, тогда показывать только выбранные общие окна для каждой категории в главном окне и предоставить кнопку или ссылку для отображения исчерпывающего списка.
Если вы говорите сотни окон, возможно, вам нужен поиск, возможно, в дополнение к основанному на меню подходу к просмотру окна.
В любом случае, обеспечение удобного доступа к нескольким наиболее часто используемым окнам - хорошая идея. Такие окна могут быть явно выбраны разработчиком на основе исследования пользователя или выбраны пользователем (избранное), но они также обычно работают хорошо, чтобы сделать их автоматически с помощью алгоритма, который использует некоторую комбинацию частоты и времени использования.