WPF 4
90WPF --- Основа WPF --- WPF 4
WPF 4 — относительно новая технология. Частично она входила в несколько выпусков .NET и постепенно совершенствовалась:
- WPF 3.0
Первая версия WPF вышла вместе с двумя другими технологиями: Windows Communication Foundation (WCF) и Windows Workflow Foundation (WF). Все вместе это называлось .NET 3.0.
- WPF 3.5
Год спустя, вышла новая версия WPF, как часть .NET Framework 3.5. Новые средства WPF в основном были слегка усовершенствованы, включая исправление ошибок и повышение производительности.
- WPF 3.5 SP1
Когда вышел пакет обновлений .NET Framework Service Pack 1 (SP1), проектировщики WPF получили возможность добавить некоторые новые средства, подобные сглаженной графике (благодаря построителям текстуры) и изощренному элементу управления DataGrid.
- WPF 4
В последнем выпуске WPF появилось множество улучшений, включая ценные новые средства, построенные на базе существующей инфраструктуры WPF. Среди некоторых наиболее заметных изменений — улучшенная визуализация текста, более естественная анимация и поддержка средств Windows 7, таких как сенсорные возможности и новая панель задач.
Новые средства
Приведенный ниже список поможет идентифицировать ряд наиболее заметных изменений, произошедших со времени выхода WPF 3.0:
Новые элементы управления. Семейство элементов WPF продолжает расти. Теперь оно включает профессионально выглядящий DataGrid, стандартные DataPicker и Calendar и встроенный WebBrowser для просмотра HTML-разметки и веб-серфинга. Отдельная загрузка также добавляет полезный элемент управления Ribbon, который придает приложениям современный вид.
Усовершенствования двумерной графики. Теперь визуальное представление каждого элемента может быть радикально изменено посредством эффектов в духе PhotoShop — через построители текстур (с использованием вплоть до версии 3 стандарта построителей текстуры). Разработчики, которые желают манипулировать индивидуальными пикселями вручную, могут также генерировать и модифицировать изображения с помощью класса WriteableBitmap.
Облегчение анимации. Эти функции позволяют создавать более жизнеподобные анимации, которые прыгают, ускоряются и качаются естественным образом.
Диспетчер визуального состояния. Впервые появившийся в Silverlight, диспетчер визуального состояния облегчает изменение обложек элементов управления без необходимости понимания их внутреннего устройства и работы.
Windows 7. Новейшая операционная система от Microsoft добавила целый пакет новых средств. WPF включает естественную поддержку улучшенной панели задач, позволяя использовать списки переходов, перекрытия значков, уведомления о ходе работ и панели инструментов с миниатюрами. При наличии соответствующего оборудования можно использовать поддержку WPF сенсорных возможностей Windows 7, которые позволяют с помощью жестов на сенсорном экране управлять визуальными объектами.
Улучшенная визуализация. В WPF продолжает улучшаться качество отображения за счет преодоления проблем, связанных с моделью рисования, не зависящей от разрешения монитора. В WPF 4 можно использовать округление компоновки, которое выравнивает контейнеры по границам пикселей, гарантируя чистое изображение. То же самое можно сделать при визуализации текста, гарантируя его четкость даже при самых маленьких размерах.
Кэширование растровых изображений. При правильном сценарии рабочую нагрузку процессора можно снижать, кэшируя сложную векторную графику в памяти видеокарты. Эта техника удобна, в частности, в случае использования анимации.
XAML 2009. В WPF появилась новая версия стандарта разметки XAML, используемого для объявления пользовательского интерфейса в окне или на странице. В нем добавлен ряд небольших улучшений, но, скорее всего, вы пока не захотите ими пользоваться, потому что стандарт не встроен в компилятор WPF XAML.
WPF Toolkit
Прежде чем новый элемент управления найдет свое место в библиотеках WPF платформы .NET, он начинает свою жизнь в составе отдельной загрузки инструментального набора WPF Toolkit. Хотя WPF Toolkit не предсказывает будущего направления развития WPF, это замечательное место, где можно найти практичные компоненты и элементы, выходящие за рамки обычных выпусков WPF. Так, например, WPF не включает никаких инструментов построения диаграмм, а в WPF Toolkit вы найдете набор элементов для создания столбчатых, круговых, линейных и прочих диаграмм.
Для загрузки WPF Toolkit, ознакомления с его кодом либо изучения документации обратитесь по адресу http://wpf.codeplex.com. Там же вы найдете ссылки на другие управляемые Microsoft проекты WPF, включая WPF Features (куда входят экспериментальные средства WPF) и средства тестирования WPF.
Клиентский профиль .NET
Как ни странно, доступны два способа выбрать в качестве цели WPF 4. Первый способ — построить приложение, которое требует стандартной установки полной платформы .NET Framework 4. Второй способ — построить приложение, которому требуется .NET Framework 4 Client Profile (Клиентский профиль .NET Framework 4).
Клиентский профиль — это подмножество .NET Framework, которое требуется многофункциональным клиентским приложениями вроде WPF. Сюда не входят средства серверной стороны, такие как ASP.NET, отладчики, средства разработки, компиляторы кода и унаследованные средства (подобные поддержке баз данных Oracle). Более важно то, что клиент имеет меньший размер, требуя загрузки около 30 Мбайт, в то время как полный комплект распространения .NET Framework занимает около 100 Мбайт. Естественно, если приложение ориентировано на .NET Framework 4 Client Profile, оно без проблем будет работать под управлением полной версии .NET Framework.
Концепция клиентского профиля появилась в .NET 3.5 SP1. Однако в ней по-прежнему присутствуют несколько моментов, которые мешают ей стать стандартом. В .NET 4 были проведены работы по тонкой настройке средств, включаемых в комплект клиентского профиля, предполагая сделать его стандартным выбором для любого приложения. В Visual Studio 2010 большинство проектов автоматически нацелены на .NET Framework 4 Client Profile. (Именно это вы получаете, выбирая .NET Framework 4 в диалоговом окне New Project.) Изменив настройку Target Framework (Целевая платформа) в свойствах проекта, можно увидеть более подробный список, который имеет отдельные опции для полной версии .NET Framework 4 и .NET Framework 4 Client Profile.
При выборе целевой версии .NET часто важно учитывать, насколько широко распространены различные исполняющие среды в настоящее время. В идеале пользователи должны иметь возможность запускать приложения, не требуя дополнительного шага по загрузке и установке.