Опрос
Вы участвуете в программе Windows Insider?
Популярные новости
Обсуждаемые новости

Windows Ribbon в .NET-приложениях: пролог

Напечатать страницу
29.07.2010 12:20 | deeper2k

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 и их использование в .NET-приложениях с его библиотекой. Тем не менее, я буду стараться добавлять что-то от себя, а также вырезать некоторые уже не актуальные моменты в исходных сообщениях Арика, таким образом "сдабривая" материал авторскими дополнениями, вставками и, возможно, какими-то советами и наблюдениями.

Статьи я буду стараться строить по следующему принципу:

  • Вступление, в котором я буду кратко описывать то, о чём пойдёт речь в статье;
  • Основная часть, которая будет являться по большей части простым переводом;
  • Заключение, в котором я буду давать возможные советы или же просто подводить итог.


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

В зависимости от объёма материала и от того, как он согласуется, одна статья может включать в себя сразу несколько сообщений из блога Арика. Таким образом, итоговое количество статей в серии, скорее всего, будет меньше количества сообщений относительно 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. Загрузить её можно с репозитория CodePlex.

Во-вторых, для компиляции проекта, использующего ленту, понадобится Windows 7 SDK, который можно загрузить отсюда.

Ну и, разумеется, среда разработки Visual Studio версии не ниже 2008 SP1.


Заключение
На этом, пожалуй, подготовительный процесс завершён. В следующей статье будут кратко представлены основные положения касательно самой ленты, а также описан процесс создания простейшего приложения с поддержкой Windows Ribbon.


Sgt.Riggs, TheVista.Ru Team,
Июль 2010

Комментарии

Не в сети

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

29.07.10 12:28
0
Не в сети

Если не ошибаюсь, то лента для WPF есть в составе WPF Toolkit.

29.07.10 12:33
0
Не в сети

Вот, лента для WPF, в центре загрузки со вчерашнего дня
http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=2bfc3187-74aa-4154-a670-76ef8bc2a0b4

03.08.10 11:47
0
Не в сети

Спасибо

03.08.10 15:49
0
Не в сети

arseny1992, вот спасибо! Пойдёт на склад

07.08.10 10:41
0
Для возможности комментировать войдите в 1 клик через

По теме

Акции MSFT
420.55 0.00
Акции торгуются с 17:30 до 00:00 по Москве
Все права принадлежат © ms insider @thevista.ru, 2022
Сайт является источником уникальной информации о семействе операционных систем Windows и других продуктах Microsoft. Перепечатка материалов возможна только с разрешения редакции.
Работает на WMS 2.34 (Страница создана за 0.031 секунд (Общее время SQL: 0.015 секунд - SQL запросов: 63 - Среднее время SQL: 0.00023 секунд))
Top.Mail.Ru