Windows Presentation Foundation | это... Что такое Windows Presentation Foundation? (original) (raw)

WPF в составе .NET Framework

Windows Presentation Foundation (WPF[1]) — система для построения клиентских приложений Windows с визуально привлекательными возможностями взаимодействия с пользователем, графическая (презентационная) подсистема в составе .NET Framework (начиная с версии 3.0), использующая язык XAML[2].

WPF предустановлена в Windows Vista(.NET Framework 3.0) и Windows 7(.NET Framework 3.5 SP1). С помощью WPF можно создавать широкий спектр как автономных, так и запускаемых в браузере приложений[3].

Содержание

Особенности технологии

В основе WPF лежит векторная система визуализации, не зависящая от разрешения устройства вывода и созданная с учётом возможностей современного графического оборудования. WPF предоставляет средства для создания визуального интерфейса, включая язык XAML (Extensible Application Markup Language), элементы управления, привязку данных, макеты, двухмерную и трёхмерную графику, анимацию, стили, шаблоны, документы, текст, мультимедиа и оформление[3].

Графической технологией, лежащей в основе WPF, является DirectX, в отличие от Windows Forms, где используется GDI/GDI+[4]. Производительность WPF выше, чем у GDI+ за счёт использования аппаратного ускорения графики через DirectX.

Также существует урезанная версия CLR, называющаяся WPF/E, она же известна как Silverlight.

Использование разметки XAML

XAML представляет собой XML, в котором фактически реализованы классы .NET Framework. Также реализована модель разделения кода и дизайна, позволяющая кооперироваться программисту и дизайнеру. Кроме того, есть встроенная поддержка стилей элементов, а сами элементы легко разделить на элементы управления второго уровня, которые, в свою очередь, разделяются до уровня векторных фигур и свойств/действий. Это позволяет легко задать стиль для любого элемента, например, Button (кнопка).

Средства разработки

Для работы с WPF требуется любой .NET-совместимый язык. В этот список входит множество языков: C#, VB, C++, Ruby, Python, Delphi (Prism), Lua и многие другие. Для полноценной работы может быть использована как Visual Studio, так и Expression Blend. Первая ориентирована на программирование, а вторая — на дизайн и позволяет делать многие вещи, не прибегая к ручному редактированию XAML. Примеры этому — анимация, стилизация, состояния, создание элементов управления и так далее.

Версии

См. также

Литература

Ссылки

Примечания

  1. Обычно произносится как «даб-пи-эф»
  2. Произносится как «замл»
  3. 1 2 MSDN Введение в WPF (рус.). Microsoft. Архивировано из первоисточника 14 февраля 2012. Проверено 15 ноября 2010.
  4. Мэтью Мак-Дональд WPF: Windows Presentation Foundation в .NET 3.5 с примерами на C# 2008 для профессионалов = Pro WPF in C# 2008: Windows Presentation Foundation with .NET 3.5. — 2-ое. — М.: «Вильямс», 2008. — С. 25. — 928 с. — ISBN 978-5-8459-1429-3
Просмотр этого шаблона .NET Framework
Архитектура Base Class LibraryCommon Language Infrastructure.NET assemblyметаданныеCOM Interop
Инфраструктура Common Language RuntimeCommon Type SystemCommon Intermediate Language • Virtual Execution System • Dynamic Language Runtime
Языки Microsoft C#Visual Basic .NETC++/CLI (Managed) • Visual J#JScript .NETWindows PowerShellIronPythonIronRubyF#Spec#Sing#
Другие языки A#Boo • IronLisp • L# • NemerleP#PascalABC.NETPHPScalaCobra • Delphi Prism
Windows Foundations PresentationCommunicationWorkflow
Компоненты ADO.NET (Entity Framework · Data Services) · ASP.NET (AJAX · MVC · Dynamic Data) · .NET Remoting · Language Integrated Query · Windows CardSpace · Windows Forms · XAML · ClickOnce · Dynamic Language Runtime · Parallel FX Library (PLINQ · TPL)
Реализации DotGNUMono.NET Compact Framework (Xbox 360) • .NET Micro FrameworkPortable.NETXNA FrameworkSilverlight • Shared Source Common Language Infrastructure
Сравнения C# и Java • C# и Visual Basic .NET
Будущие технологии Acropolis • Jasper
Просмотр этого шаблона Программные интерфейсы и фреймворки Microsoft Windows
Графика Проводник WindowsDirectXDirect3DGDIWindows Presentation Foundation • Windows Color System • Windows Image Acquisition • Windows Imaging Component
Звук DirectSound • DirectMusic • XACT • Speech APIMME
Мультимедиа DirectShowWindows MediaMedia Foundation
Веб MSHTMLMSXML • Платформа RSS для Windows • JScriptActiveXXMLHttpRequest • Гаджеты
Доступ к данным Компоненты Microsoft Data Access • Extensible Storage Engine • ADO.NET • Sync Framework • Jet-механизм
Сети Winsock (LSP) • Filtering Platform • NDIS • Windows Rally • Сервис фоновой интеллектуальой передачи данных • P2P API
Коммуникации TAPI
Администрирование Консоль Win32 • Windows Script Host • Инструментарий управления Windows • PowerShell • Планировщик задач • Offline Files • Теневое копирование • Windows Installer • Диспетчер ошибок Windows • Журнал событий Windows
Модель компонентов COMCOM+DCOM.NET Framework
Библиотеки Microsoft Foundation Classes (MFC) • Active Template Library (ATL) • Windows Template Library (WTL) • Base Class Library (BCL)
Разработка драйверов Windows Driver ModelWindows Driver Foundation (KMDF • UMDF)
Безопасность CryptoAPI (CAPICOM) • Windows CardSpace • Data protection API • Security Support Provider Interface
.NET .NET FrameworkASP.NETADO.NET.NET RemotingWindows Presentation FoundationWindows Workflow FoundationWindows Communication FoundationWindows CardSpaceXNA FrameworkSilverlight • Библиотека параллельного программирования
Межпроцессноевзаимодействие Dynamic Data Exchange (DDE) • MSRPC • Именованные каналы
Текст иподдержка языков Framework Текстовых сервисов • Объектная модель текстов • Редактор метода ввода • Языковые пакеты • Многоязычный интерфейс
Игры XNA FrameworkDirectX
Просмотр этого шаблона Инструменты разработки элементов графического интерфейса
Низко-уровневые Macintosh Toolbox/CarbonWindows API • Intrinsics • Intuition • Xlib
Высоко-уровневые Amiga OS BOOPSI • Magic User Interface • Zune • ReAction GUI Mac OS и Mac OS X Cocoa • MacApp • MacZoop • PowerPlant Microsoft Windows Microsoft Foundation ClassesWindows Template Library • SmartWin++ • Object Windows LibraryVisual Component LibraryWindows FormsWindows Presentation Foundation UNIX, под X XawMotifLessTif • InterViews Кросс-платфор-менные На основе Flash ASWing • Adobe FlexGnash • SWF2EXE Software На основе XML,AJAX или SVG Ample SDK • CougarXML • Dojo Toolkit • Echo • ExtJSGladeXMLGoogle Web ToolkitjQuery • Lively Kernel • MooTools • Pyjamas • qooxdoo • Rialto Toolkit • script.aculo.us • XML User Interface • XULYahoo! UI Library На основе Java Abstract Window ToolkitSwingStandard Widget ToolkitQt Jambi На основеC или C++ Agar • CEGUI • Component Library for Cross Platform • dlib C++ Library • FLTKFOX toolkit • OpenGL User Interface Library • GTK+IUPJuce • JX Application Framework • Qt • TnFOX • Visual Component Framework • wxWidgets • YAAF • XForms • XVT • Ultimate++ На основе Common Lisp CAPI • Common Graphics • CLIM • McCLIM • Garnet На основе Pascal IP Pascal • LazarusfpGUIFireMonkey На основе Python Pyjamas • PyQtPyGTK • PyGUI • wxPython • PySideTkinter На основе Objective C GNUstep На основе других Tk
Просмотр этого шаблона API и фреймворки Microsoft
Графика Desktop Window Manager · Direct2D · Direct3D (extensions) · GDI / GDI+ · WPF · Windows Color System · Windows Image Acquisition · Windows Imaging Component
Аудио DirectMusic · DirectSound · DirectX plugin · XACT · Speech API · XAudio2
Мультимедиа DirectX (Media Objects · Video Acceleration) · DirectInput · DirectShow · Image Mastering API · Managed DirectX · Media Foundation · XNA · Windows Media · Video for Windows
Web MSHTML · RSS Platform · JScript · VBScript · BHO · XDR · SideBar Gadgets
Доступ к данным Data Access Components · Extensible Storage Engine · ADO.NET · ADO.NET Entity Framework · Sync Framework · Jet Engine · MSXML · OLE DB · OPC
Сеть Winsock (LSP) · Winsock Kernel · Filtering Platform · Network Driver Interface Specification · Windows Rally · BITS · P2P API · MSMQ · MS MPI · DirectPlay
Коммуникации Messaging API · Telephony API · WCF
Администрирование и управление Win32 console · Windows Script Host · WMI (extensions) · PowerShell · Task Scheduler · Offline Files · Shadow Copy · Windows Installer · Error Reporting · Event Log · Common Log File System
Компонентная модель COM · COM+ · ActiveX · Distributed Component Object Model · .NET Framework
Библиотеки Base Class Library (BCL) · Microsoft Foundation Classes (MFC) · Active Template Library (ATL) · Windows Template Library (WTL)
Драйверы устройств Windows Driver Model · Windows Driver Foundation (KMDF · UMDF) · WDDM · NDIS · UAA · Broadcast Driver Architecture · VxD
Безопасность Crypto API (CAPICOM) · Windows CardSpace · Data Protection API · Security Support Provider Interface (SSPI)
.NET ASP.NET · ADO.NET · Base Class Library (BCL) · Remoting · Silverlight · TPL · WCF · WCS · WPF · WF
Программное обеспечение EFx Factory · Enterprise Library · Composite UI · CCF · CSF
IPC MSRPC · Dynamic Data Exchange (DDE) · Remoting · WCF
Доступность Active Accessibility · UI Automation
Текст и многоязнаяподдержка DirectWrite · Text Services Framework · Text Object Model · Input method editor · Language Interface Pack · Multilingual User Interface · Uniscribe