Microsoft TechDays Александр Шер Разработчик ООО «Айко»

Презентация:



Advertisements
Похожие презентации
Microsoft TechDays Александр Шер Разработчик ООО «Айко»
Advertisements

Microsoft TechDays Роман Здебский Эксперт по технологиям разработки ПО Microsoft.
Михаил Черномордиков Developer Evangelist, Microsoft Россия
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Симпозиум 2008 Сергей Шутов, ДИМАС Борис Егоров, Интерсистемс Практика использования Zen и Прототип-6.
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Создание форм в Access Выполнил: Усманов Шохрух. Формы это важнейшие объекты базы данных, окна, через которые пользователи могут просматривать и изменять.
Михаил Черномордиков Developer Evangelist, Microsoft Россия
Ресурсы. Стили. Анимация. Лекция 15. Ресурсы Стили Анимация.
Основы объектно-ориентированного программирования (ООП)
Создание презентаций в Power Point. Слайды в PowerPoint С помощью приложения PowerPoint текстовая и числовая информация легко превращается в красочно.
Классы Windows Presentation Foundation System.Object DispatcherObject ApplicationDependencyObject Visual UIElement FrameworkElement Page Shape TextBlock.
Платформа разработки ASP.NET Гайдар Магдануров t: e: m: +7.
Программирование на C# 4 и.NET 4 Лекция 15. WPF. Шаблон элемента управления Элементы управления WPF спроектированы таким образом, чтобы полностью отделить.
Исполнитель: Утяшева И.А. Научный руководитель: к.ф.-м.н. Винокур В.В.
Автоматизация сборки и модификации разнородной компьютерной документации: разработка графического интерфейса приложения и формата файлов проекта. Исполнитель:
Microsoft TechDays Порубов Александр Независимый Silverlight-разработчик, Microsoft MVP Silverlighter.ru, Porubov.com.
База данных (БД) – Совокупность определённым образом организованной информации на определённую тему (в рамках определённой предметной деятельности); Организованная.
Применение специальных эффектов и ссылок при создании презентаций Мультимедийные технологии.
Транксрипт:

Microsoft TechDayshttp:// Александр Шер Разработчик ООО «Айко»

Microsoft TechDayshttp:// Зачем WPF и XAML разработчику? Styles & Templates Bindings RoutedEvents & InputBindings Triggers – управление представлением Практические заметки

Microsoft TechDayshttp:// – WPF для тех, кому нужна излинше навороченная графика – Все это жудко тормозит – Нет никакого дизайнера форм, а Blend надо покупать отдельно – Стандартных контролов мало, а контролы третьих фирм надо для WPF покупать заново – А что мне дает WPF как разработчику?

Microsoft TechDayshttp:// WPF предоставляет очень много возможностей для создания пользовательских интерфейсов (Представление != Графика) Какие из них использовать – решать Вам! Большинство пользователей любит красивые приложения

Microsoft TechDayshttp:// WinForms порождает отдельный handle для каждого элемента управления в окне, а WPF использует всего один* – само окно WPF умеет использовать 3D-ускоритель Бизнес приложение не требует графики уровня 3D-шутера Пример из жизни: приложение iiko Front для кассовых терминалов создано на WPF и работает на компьютерах с 1ГГц проц и 256Мб памяти

Microsoft TechDayshttp:// В сложных приложениях дизайнер WinForms все равно со временем «отваливается» WPF позволяет легко создавать пользовательские интерфейсы без дизайнера Blend входит в MSDN Premium, а «коробка» стоит меньше 100$

Microsoft TechDayshttp:// В WPF логика контрола полностью отделена от представления Во многих случаях в отдельном контроле нет необходимости – достаточно настроить Template Чарты, гриды и красивые элементы управления легко создаются в WPF стандартными средствами DataGrid и Calendar уже есть (

Microsoft TechDayshttp:// WPF действительно позволяет отделить представление от логики и данных «Чистая» реализация паттернов вроде MVC Покрытие юнит-тестами Разработка UI параллельно с логикой Механизмы стилей и шаблонов значительно повышают code reuse Более 90% всего, что связано с представлением, создается декларативно

Microsoft TechDayshttp:// WPF позволяет хранить в ресурсах экземпляр любого объекта с ключом любого типа Словарь ресурсов может ссылаться на другие словари Любой контрол, стиль или темплейт имеет свой словарь ресурсов

Microsoft TechDayshttp:// Стиль – это набор ресурсов, значений свойств, обработчиков событий и триггеров Стили могут применяться явно или автоматически в пределах любой области видимости Стили поддерживают наследование и применение отдельных частей стиля в зависимости от типа контрола StyleSelectorы позволяют применять стили в соответствии с заданной логикой

Microsoft TechDayshttp:// Темплейты позволяют полностью изменить внешний вид контрола Логика поведения контрола может использовать именованные части темплейта Элементы в темплейте могут использовать значения свойств контрола DataTemplateSelectorы позволяют выбирать темплейт в зависимости от данных

Microsoft TechDayshttp:// XmlDataProvider – работа с XML ObjectDataProvider – вызов методов и создание экземпляров класса CollectionViewSource – фильтрация, сортировка, группировка CompositeCollection – объединение коллекций

Microsoft TechDayshttp:// В WPF можно привязать значение DependencyProperty к любому набору источников Свойство не ReadOnly FrameworkPropertyMetadata.IsNotDataBindable == false Bindingи могут быть в любом направлении, с конвертацией данных, с явным или автоматическим обновлением, валидацией Источник может быть задан явно, относительно Bindingа или по имени

Microsoft TechDayshttp:// DataContext позволяет привязывать данные к иерархии объектов DataContext наследует значение Значение этого свойства у родителя передается всем дочерним контролам, для которых оно не задано явно Bindingи других свойств объекта затем могут быть заданы относительно DataContextа

Microsoft TechDayshttp:// Механизм RoutedEvents позволяет одним контролам порождать команды, а другим перехватывать и выполнять действия Команды передаются по дереву контролов и могут быть перехвачены несколькими контролами Обработчики для команд также могут задаваться в стилях WPF позволяет порождать команды с помощью комбинации клавиш и нажатий кнопок мыши (InputBindings)

Microsoft TechDayshttp:// Триггеры позволяют декларативно описывать измения свойства контролов и управлять анимацией Триггеры можно: вешать на срабатывание событий или изменение значений свойств задавать на уровне контролов, стилей или темплейтов комбинировать с биндингами для полного контроля над изменениями представления

Microsoft TechDayshttp:// Используйте DataContext для поддерева контролов, связанных с общим источником данных Выделяйте все повторяющиеся значения свойств контролов в стили Храните описание темплейтов как можно выше в дереве контролов Старайтесь подключать словари ресурсов на уровне Application (если допускает Scope) Активное использование RoutedCommands не сильно, но снижает производительность

Microsoft TechDayshttp:// CustomControl + Template предпочтительнее UserControl Используйте ValueConverterы и Selectorы DataTrigger + MultiBinding + Converter дает больше контроля, чем MultiDataTrigger Не ориентируйтесь на взаимное расположение частей контрола Старайтесь не использовать код в самом представлении, но не делайте из этого табу!

Microsoft TechDayshttp:// Раздел, посвященный WPF в MSDN: WPF на CodePlex: Собрание блоггеров (Dr. WPF, John Smith, Beatriz Costa, etc.):

Microsoft TechDayshttp://