Роман Здебский Microsoft rzdebski@microsoft.com http://blogs.msdn.com/roman Настоящее Будущее AutoCad 2009 Microsoft Dynamics Visual Studio 2010 British Library Turn The pages Microsoft Surface Microsoft Semblio (SDK) Windows PowerShell 2 Integrated Scripting Environment Microsoft Songsmith http://www.techdays.ru/Search.aspx?Tag=WPF Hardware accelerated extensible shader effects Support for Xlinq binding D3D2D Business object validation Firefox Support for Xbaps HTTP Cookie Support Web Service support in XBap Add-ins Better Support for IMEs Better debugging RichTextBox improvements Setup Improvements DirectX interop Indic language Support Tear-Free Writeable Bitmap Web Browser Control Click-Once Improvements Faster Cold Start Working set improvements Improved perf and behavior in DataSet binding Improved perf of IEnumerable binding (Linq) Better Perf in Xml (DOM) binding Layered Windows perf improvements Improved Text Realizations Virtualized TreeView control Faster fundamentals for DataGrid control Smoother animations Improved ListView & ListBox Scroll performance Container Recycling % ПК в США с .NET Framework 3.0 и выше % Vista & Win7 Windows Update Улучшения в разворачива нии Улучшение основ Повышение четкости текстов Развертывание Улучшение Interop Улучшение Accessibility & локализации Производительность Графика и UI Инструменты Multi-touch RAD LOB Designer DataGrid Ribbon Superbar Common Dialogs Улучшения XAML Designer Effects Улучшение взаимодействия Developer/Designer Animation Visual State Manager Media Enhancements (h.264 on Win7) Еще многое… DataGrid, DatePicker, Calendar поставляется вместе с исходным кодом в рамках на www.codeplex.com DataGrid - возможности: Авто-генерирование колонок Различные типы: Text, CheckBox, ComboBox, Button, Hyperlink + TemplateColumn Редактирование Фильтры и группировки Item Container Recycling Deferred Scrolling http://msdn.microsoft.com/officeui Ribbon с масштабированием RibbonTabs RibbonGroups RibbonApplicationMenu (Pearl) QuickAccessToolbar KeyTips Поддержка Design Time Большее использование GPU Развитие GPU hardware – все больше будет переложено на GPU Улучшения качества рендеринга 4.0: Интеграция с Direct Write для повышения четкости текстов 4.0: привязка к пикселям на уровне шаблонов расположения интерфейса (Layout Pixel-level Snapping) Новые визуальные элементы Интеграция с XNA Богатство графики Pixel Shaders 3.0 Vertex Shaders Multiple Shaders Shaders в WPF 3D Улучшения в 3D Программные BitmapEffects будут удалены Развитие библиотеки эффектов http://www.codeplex.com/wpffx C# 3.0 Другие VB 9.0 .NET Language Integrated Query Клиент HTTP Сервер Microsoft SQL Server, Oracle, DB2, MySQL… WPF Client Profile – 28 MB Common Language Runtime (CLR) ClickOnce Windows Forms Windows Presentation Foundation Windows Communication Foundation Автоматическая установка по ссылке в интрасети или интернет Автоматическое конфигурируемое обновление Нет необходимости в административных правах Легкость настройки WPF-приложение ASP.NET Dynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД WPF-приложение ADO.NET Data Service Offline SQL Server Compact - *.sdf ASP.NET Dynamic Data ADO.NET Data Service Entities– Бизнес логика Entity Framework - Доступ к данным СУБД .NET 4 новый XAML парсер Быстрее Больше возможностей расширения с помощью XamlReader.Load и XamlWriter.Save BAML формат – публичные APIs для Read/Write .NET 4’s XAML парсер – новые возможности языка XAML Generics Улучшения ссылок по имени (References by Name) [MS-WPFXV] Формат файлов WPF – XAML - опубликован Улучшения поддержки ссылок по имени XAML 2006 <Label Target="{Binding ElementName=firstName}"> First Name</Label> <TextBox Name="firstNameBox" /> XAML 2009 <Label Target="{x:Reference firstNameBox}">…</> <TextBox Name="firstNameBox" /> Or even better: <Label Target="firstNameBox">First Name</Label> <TextBox Name="firstNameBox" /> XAML 2006 <sys:String xmlns:s="clrnamespace:System;assembly=mscorlib“>Foo </s:String> XAML 2009 Поддержка Generics XAML 2006 class PersonCollection : ObservableCollection<Person> {} <l:PersonCollection> <Person Name="Dan" /> </l:PersonCollection> XAML 2009 <ObservableCollection x:TypeArguments=“Person”> <Person Name="Dan" /> <Person Name="Rob" /> </ObservableCollection> XAML 2006 <Button Click="button_Click" /> + компиляция XAML 2009 Компиляции не требуется! также: <Button Click="{DelegateCreatingME Foo}" /> Или даже: <Button> <Button.Click> <DelegateCreatingME Name="Foo" /> <Button.Click> </Button> Инстанциирование с конструктором не по умолчанию XAML 2006 Написать TypeConverter XAML 2009 <Random> <!-- Random seed --> <x:Arguments> <x:Int32>123</x:Int32> </x:Arguments> </Random> Итог Улучшения ссылок по имени (x:Reference) Полная поддержка generics (x:TypeArguments) Встроенные типы Произвольные ключи словарей (x:Key) Декларативное определение обработчиков событий Новые свойства типов (x:SchemaType.Members, x:SchemaProperty) Конструкторы не по умолчанию (x:Arguments) Использование factory-методов(x:FactoryMethod) XML namespace prefixes (xmlns) на member elements B BamlReader BamlWriter X XamlXmlReader ObjectWriter XamlXmlWriter ObjectReader Сохранение в Xaml (O to X) DomReader Загрузка Xaml @ Runtime (X to O) DomWriter Сценарии Оптимизация Xaml в Binary Form (X to B) Binary Form загрузка @ Runtime (B to 0) Дизайнеры – загрузка в DOM & Objects D O Определение «что», без «как» WPF WCF WF XAML позволяет создавать богатые модели приложений Преимущества Проще управлять с помощью инструментов Проще разворачивать и обновлять Проще использовать в различных исполняющих средах Проще статически проверять и анализировать Проще запрашивать и строить Общий формат XAML и связь с CLR Развитие поддержки XAML .NET 3.0 .NET 3.5 .NET 4.0 Полная поддержка XAML Полная поддержка XAML Полная поддержка XAML WF XAML с code behind XAML с code behind Полная поддержка XAML WCF Нет поддержки XAML XAML с code behind Полная поддержка XAML WPF Получение совета от двух аналитиков по покупке акций WPF App Button.Click WCF Advice Service1 WF Workflow WCF Client Operation WCF Client Operation Update UI WCF Advice Service2 RAD Databinding Auto Layout • Настройка связывания данных в приложении без специальных познаний в XAML (как в Windows Forms) • Автоматическое позиционирование элементов управления Редактирование свойств • Установка свойств – лучшие практики из дизайнера Windows Forms Стилизация приложения • Упрощение стилизации и осуществления основных задач (работа с ресурсами) без кодирования XAML Silverlight совместимость • Одинаковая работа и программная модель Silverlight и WPF везде, где это возможно. Chart Controls Masked Edit, Smart Edit, Spinner Auto Completion and PickList Property Grid DeepZoom … http://blogs.msdn.com/jaimer Доступен Windows SDK for Win7 Beta Прозрачная поддержка Touch всеми элементами управления WPF Поддержка TaskBar (TaskLists, и т.п.) Улучшения рендеринга текста с помощью DirectWrite Использование h.264, divx Ribbon WindowsClient.net/WPF CodePlex.com/WPF http://msdn.microsoft.com/enus/netframework/aa663326.aspx © 2007 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION. Роман Здебский Microsoft rzdebski@microsoft.com http://blogs.msdn.com/roman