Windows Ribbon в .NET-приложениях: пролог
Windows 7 принесла с собой множество полезных и интересных нововведений, в том числе многочисленные обновления в пользовательском интерфейсе. Это и улучшенная панель задач с огромным количеством новых возможностей, и новшества в интерфейсе Windows Aero и многое другое. Одной из новинок является Windows Ribbon — "лента", которая впервые была представлена в Office 2007 и затем, претерпев некоторые изменения, стала "родным" элементом управления в Windows 7.
О том, какими возможностями обладает Windows Ribbon и как реализовать её в приложениях на управляемом .NET-коде (C#, Visual Basic .NET), и пойдёт речь в настоящей серии статей. Некоторые подробности о ленте будут описаны в первой статье, а в данном "прологе" я хотел бы, во-первых, кратко описать то, о чём пойдёт речь в серии, а во-вторых, представить приблизительную структуру статей и дать некоторые пояснения по материалу.
Windows Ribbon for WinForms
Windows Ribbon в Windows 7 — это объект COM (англ. Component Object Model — объектная модель компонентов), работа с ним осуществляется при помощи функций Windows API (англ. Application Programming Interfaces — интерфейс прикладного программирования), то есть, по сути, предполагается использование ленты в приложениях, написанных на неуправляемом (нативном) C++.
Тем не менее, можно написать библиотеку-"обёртку" для .NET, с помощью которой можно будет обращаться к API-функциям Windows Ribbon. Именно это и сделал Арик Познански (Arik Poznanski), разработчик из Microsoft Israel, создав
Структура статей
Основой статей будет перевод записей в
Статьи я буду стараться строить по следующему принципу:
- Вступление, в котором я буду кратко описывать то, о чём пойдёт речь в статье;
- Основная часть, которая будет являться по большей части простым переводом;
- Заключение, в котором я буду давать возможные советы или же просто подводить итог.
Конечно, далеко не все статьи будут построены именно так, поэтому иногда вы не увидите вступления или заключения (или и того, и другого вместе).
В зависимости от объёма материала и от того, как он согласуется, одна статья может включать в себя сразу несколько сообщений из блога Арика. Таким образом, итоговое количество статей в серии, скорее всего, будет меньше количества сообщений относительно Windows Ribbon for WinForms в блоге Арика.
Материал
Арик позаботился о том, чтобы создать несколько приложений-образцов, показывающих, как использовать те или иные возможности Windows Ribbon. Всего имеется 18 образцов, на которых и основаны сообщения Арика, а значит, и данные статьи:
01 - AddingRibbonSupport — Создание пустого приложения WinForms с базовой поддержкой ленты.
02 - ApplicationMenuButton — Приложение WinForms с лентой, содержащее меню приложения с некоторыми кнопками.
03 - MenuDropDown — Приложение WinForms с элементами DropDownButton и SplitButton в меню приложения.
04 - TabGroupHelp — Приложение WinForms, использующее вкладки, группы и кнопку справки.
05 - Spinner — Приложение WinForms, демонстрирующее использование элемента управления Spinner на ленте.
06 - ComboBox — Приложение WinForms, демонстрирующее использование элемента управления ComboBox на Ленте.
07 - RibbonColor — Приложение WinForms, показывающее, как можно изменять цвет ленты.
08 - Images — Приложение WinForms, показывающее, как динамически работать с изображениями на ленте.
09 - Galleries — Приложение WinForms, использующее элементы управления DropDownGallery, SplitButtonGallery и InRibbonGallery.
10 - CheckBox — Приложение WinForms, использующее элементы управления CheckBox и ToggleButton на ленте.
11 - DropDownColorPicker — Приложение WinForms, демонстрирующее использование элемента управления DropDownColorPicker на ленте.
12 - FontControl — Приложение WinForms, демонстрирующее использование элемента управления FontControl на ленте.
13 - ApplicationModes — Приложение WinForms, демонстрирующее использование ApplicationModes.
14 - ContextualTabs — Приложение WinForms, демонстрирующее использование контекстных вкладок.
15 - ContextPopup — Приложение WinForms, демонстрирующее использование контекстных всплывающих сообщений на ленте.
16 - RecentItems — Приложение WinForms, демонстрирующее использование списка последних элементов на ленте.
17 - QuickAccessToolbar — Приложение WinForms, демонстрирующее использование панели быстрого доступа.
18 - SizeDefinition — Приложение WinForms, демонстрирующее использование настраиваемых шаблонов расположения элементов.
Все эти демо-приложения входят в "комплект поставки" библиотеки Windows Ribbon for WinForms. Имеется по две версии каждого приложения: на C# и на VB.NET. Я буду рассматривать только версии, написанные на C# (впрочем, как и сам Арик в своих сообщениях).
Жаргонизмы
В статьях будут использоваться некоторые обозначения и "жаргонизмы", некоторые из которых я предпочитаю в большинстве случаев не переводить дословно, а некоторые — наоборот, поэтому, думаю, есть смысл предоставить список какой-то их части в самом начале, чтобы избежать непонимания.
- Ribbon — собственно, сам объект настоящей серии статей, "Лента". Соответственно, Windows Ribbon — "Лента Windows". В статьях абсолютно равноправно будут использоваться как английский, так и русский варианты.
- Wrapper — выше уже упоминался перевод слова как "обёртка", что, в принципе, приемлемо, но в статьях не раз будет употреблено транслитированное "враппер".
- Framework — в переводе с английского означает "каркас", в статьях также будет использоваться вариант "фреймворк". Иногда переводиться не будет.
- UI — User Interface — переводится как "пользовательский интерфейс". Для краткости иногда переводиться не будет.
- Native — в переводе с английского означает "родной". Я предпочитаю вариант "нативный".
- Control — означает "элемент управления". Слишком длинно, поэтому периодически будет появляться просто "элемент" или даже транслитированное "контрол".
- API — интерфейс прикладного программирования (см. выше). Так и останется — "API".
Другие обозначения, в том числе некоторых элементов управления ленты, будут появляться непосредственно в самих статьях. Я буду выносить их во вступление соответствующих статей, если это будет необходимо.
Что нам потребуется
Остался последний, но крайне важный подготовительный шаг: список необходимого ПО.
Во-первых, понадобится сама библиотека Windows Ribbon for WinForms. Загрузить её можно с
Во-вторых, для компиляции проекта, использующего ленту, понадобится Windows 7 SDK, который можно загрузить
Ну и, разумеется, среда разработки Visual Studio версии не ниже 2008 SP1.
Заключение
На этом, пожалуй, подготовительный процесс завершён. В следующей статье будут кратко представлены основные положения касательно самой ленты, а также описан процесс создания простейшего приложения с поддержкой Windows Ribbon.
Июль 2010
Комментарии
Кстати, а кто знает, где нарыть готовый риббон для WPF? Рисовать самому - очень долго и нежелательно.
Если не ошибаюсь, то лента для WPF есть в составе
Вот, лента для WPF, в центре загрузки со вчерашнего дня
По теме
- Видео-курсы от MS: Разработка приложений виртуальной и расширенной реальности на платформе Microsoft
- ECMA JavaScript 6: Объекты
- Как просто создать приложение для iPhone
- Разработка приложений под Windows Phone 8
- Индексированное хранилище, часть 2
- Индексированное хранилище, часть 1
- Начала Metro-программирования: создание настраиваемых приложений (ч.2)
- Начала Metro-программирования: создание настраиваемых приложений (ч.1)
- Начала Metro-программирования: создание компонентов WinRT (ч.3)
- Начала Metro-программирования: создание компонентов WinRT (ч.2)