ebook img

Основы Windows Presentation Foundation PDF

428 Pages·2008·6.366 MB·Russian
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Основы Windows Presentation Foundation

Основы Windows Presentation Foundation Крис Андерсон Отзывы Будучи одним из архитекторов WPF, Крис Андерсон со знанием дела объясняет не только «как», но и «почему». Эта книга – отличный источник информации для любо# го, кто хочет понять принципы проектирования и эффективного применения WPF. – Андерс Хейльсберг, технический специалист, корпорация Майкрософт Если считать, что WPF – технология создания пользовательских интерфейсов для следующего поколения систем Windows, то Крис Андерсон будет играть роль Чарльза Петцольда для разработчиков следующего поколения интерфейсов. – Тэд Ньюард, основатель и редактор сайта TheServerSide.NET Отличная книга, которая не только является прекрасным введением в техноло# гию WPF, но и объясняет, как раскрыть огромный потенциал, заложенный в ней. – Скотт Гатри, генеральный директор подразделения разработок, корпорация Майкрософт Технология WPF – совершенно новый подход к созданию графических при# ложений, основанный на принципах, заложенных в Windows Forms и Web. Крис не только замечательно объяснил, как пользоваться новыми возможностями WPF (иллюстрируя текст примерами программ и XAML#кода), но и почему все устроено именно так, а не иначе. Как один их архитекторов, Крис хорошо знаком с внутренним устройством и принципами проектирования WPF, а равно с тон# костями написания программ на базе этой технологии. Это очень важно знать, ес# ли вы собираетесь серьезно применять ее в своих разработках. – Брайан Нойес, главный архитектор, IDesign Inc., региональный директор Microsoft, диплом Microsoft MVP Мне была предоставлена возможность познакомиться с книгой Криса Андер# сона, и я считаю ее исключительно ценным источником, который, не кривя ду# шой, могу рекомендовать. Лично я, сталкиваясь с новой технологией, всегда стремлюсь понять, как она связана с теми, которые призвана заменить. Крис в са# мом начале соотносит WPF с миром пользовательских интерфейсов, написанных на C++ для 32#разрядных версий Windows. Крис демонстрирует глубокое пони# мание принципов WPF, показывает, как эта технология работает, и помогает чи# тателю воспользоваться уже имеющимися у него знаниями, для чего приводит примеры, имитирующие передовые приложения. & Билл Шелдон, главный инженер, компания InterKnowlogy. Посвящается моей жене Меган, которая всегда рядом, поддерживает меня во всех начинаниях и вдохновляет на новые достижения. Крис Андерсон Основы Windows Presentation Foundation Essential Windows Presentation Foundation Chris Anderson Addison Wesley Upper Saddle River, NJ • Boston • Indianapolis • San FranciscoNew York • Toronto • Montreal • London • Mьnich • Paris • MadridCapetown • Sydney • Tokyo • Singapore • Mexico City Основы Windows Presentation Foundation Крис Андерсон Москва УДК 004.4 ББК 32.973.26(cid:6)018.2 А65 К. Андерсон А65 Основы Windows Presentation Foundation. Пер. с англ. А. Слинкина — М.: ДМК Пресс, СПб.: БХВ(cid:25)Петербург — 432 с.: ил. ISBN978(cid:25)5(cid:6)94074(cid:6)363(cid:6)7 («ДМК Пресс») ISBN978(cid:25)5(cid:6)9775(cid:6)0265(cid:6)8 («БХВ(cid:6)Петербург») В книге излагаются принципиальные основы новой платформы для построения графических интерфейсов пользователя Windows Presentation Foundation (WPF), которая является составной частью каркаса .NET Framework 3.0 и включена в дистрибутив Windows Vista. Являясь одним из архитекторов системы, автор со знанием дела рассказывает о том, почему были приняты те или иные решения и как их следует применять на практике. Хотя эта книга не ставит себе целью ответить на все практические вопросы разработки приложений, она станет незаменимым спутником серьезного программиста, желающего глубоко разобраться в новой технологии. УДК 004.4 ББК 32.973.26(cid:6)018.2 Original Eglish language edition publihed by Pearson Education, Inc. Copyright © 2007 by Pearson Education, Inc. All rights reserved. Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответственности за возможные ошибки, связанные с использованием книги. ISBN 978(cid:25)0(cid:25)321(cid:25)37447(cid:25)9 (англ.) © Copyright. Pearson Education, Inc. ISBN 978(cid:25)5(cid:25)94074(cid:25)363(cid:25)3 («ДМК Пресс») © Пе ре во д на рус ский язык, оформ ле ние, ДМК Пресс ISBN 978(cid:25)5(cid:25)9775(cid:25)0265(cid:25)8 («БХВ(cid:25)Петербург») © Издание, БХВ(cid:25)Петербург 7 ООггллааввллееннииее Предисловие................................................................................................................................12 Предисловие................................................................................................................................13 Вступление....................................................................................................................................15 Краткий экскурс в историю графических интерфейсов пользователя...............15 Принципы WPF..........................................................................................................................17 Создать платформу для развитой презентации........................................................17 Создать программируемую платформу........................................................................17 Создать декларативную платформу..............................................................................18 Интегрировать пользовательский интерфейс, документы и мультимедиа.....18 Взять лучшее из Web и лучшее из Windows..............................................................18 Свести программистов и дизайнеров............................................................................18 Что собой представляет эта книга......................................................................................19 Предварительные условия................................................................................................19 Организация...........................................................................................................................20 Благодарности.............................................................................................................................20 Об авторе.......................................................................................................................................21 Глава 1. Введение......................................................................................................................23 WPF как новый ГИП................................................................................................................23 Библиотека User32 в стиле книги Чарльза Петцольда..........................................23 HTML или, по#другому, Web...........................................................................................29 Краткое знакомство с моделью программирования XAML....................................32 Обзор WPF..................................................................................................................................38 С чего начать..........................................................................................................................38 Переходим к разметке.........................................................................................................40 Основы.....................................................................................................................................41 Работа с данными.................................................................................................................47 Развитая интеграция...........................................................................................................50 Будем стильными.................................................................................................................57 Инструменты для построения приложения...............................................................59 Чего мы достигли.......................................................................................................................60 8 Оглавление Глава 2. Приложения................................................................................................................61 Принципы организации приложения.................................................................................61 Масштабируемые приложения........................................................................................61 Стиль Web...............................................................................................................................65 Стиль персональных приложений.................................................................................67 Объект Application....................................................................................................................69 Определение...........................................................................................................................70 Время жизни..........................................................................................................................72 Обработка ошибок...............................................................................................................73 Управление состоянием.....................................................................................................75 Ресурсы и конфигурирование..............................................................................................76 Конфигурация.......................................................................................................................76 Состояние, связанное с содержимым............................................................................79 Состояние#документ............................................................................................................85 Окна.................................................................................................................................................86 Отображение окна................................................................................................................88 Задание размера и положения.........................................................................................91 Объекты Window и Application.......................................................................................92 Пользовательские элементы управления........................................................................93 Навигация и страницы.............................................................................................................96 Передача состояния между страницами....................................................................101 Управление навигацией...................................................................................................106 Управление журналом......................................................................................................107 Функциональная навигация и страничные функции...........................................109 Исполнение приложений в браузере...............................................................................114 HelloBrowser.........................................................................................................................115 Под капотом.........................................................................................................................119 Независимая разметка......................................................................................................121 Чего мы достигли?...................................................................................................................122 Глава 3. Элементы управления..........................................................................................123 Принципиальные основы элементов управления.......................................................123 Модель содержимого..............................................................................................................125 Элемент ContentPresenter.....................................................................................................126 Свойство Items..........................................................................................................................128 Свойства Children и Child.....................................................................................................129 Шаблоны.....................................................................................................................................130 Привязка шаблона...................................................................................................................134 Размышления о шаблонах.....................................................................................................136 Библиотека элементов управления..................................................................................137 Кнопки...................................................................................................................................137 Оглавление 9 Списки....................................................................................................................................139 Меню и панели инструментов.......................................................................................146 Контейнеры..........................................................................................................................150 Средства просмотра документов..................................................................................164 Строительные блоки.........................................................................................................167 Чего мы достигли?...................................................................................................................176 Глава 4. Размещение..............................................................................................................177 Принципы размещения.........................................................................................................177 Контракт о размещении...................................................................................................178 Согласованное размещение............................................................................................180 Отсутствие встроенного размещения.........................................................................187 Библиотека менеджеров размещения............................................................................188 Панель Canvas.....................................................................................................................188 Панель StackPanel..............................................................................................................191 Панель DockPanel..............................................................................................................192 Панель WrapPanel.............................................................................................................195 Панель UniformGrid..........................................................................................................196 Панель Grid................................................................................................................................197 Концептуальная модель элемента Grid......................................................................198 Организация размещения в элементе Grid...............................................................203 Элемент GridSplitter.........................................................................................................206 Реализация нестандартного размещения......................................................................208 Чего мы достигли?...................................................................................................................214 Глава 5. Визуальные элементы..........................................................................................215 Двумерная графика................................................................................................................215 Принципы двумерной графики.....................................................................................216 Геометрические примитивы...........................................................................................219 Цвет.........................................................................................................................................222 Кисти......................................................................................................................................224 Перья.......................................................................................................................................231 Рисунки..................................................................................................................................235 Фигуры..................................................................................................................................236 Изображения........................................................................................................................237 Прозрачность.......................................................................................................................244 Свойство BitmapEffects....................................................................................................247 Трехмерная графика..............................................................................................................248 Программа «Здравствуй, мир» в трехмерной ипостаси.......................................249 Принципы трехмерной графики...................................................................................252 Документы и текст..................................................................................................................260 «Здравствуй, мир» – текстовый вариант...................................................................260 10 Оглавление Шрифты.................................................................................................................................265 Размещение текста.............................................................................................................266 Дополнительные типографические средства...........................................................273 Анимация....................................................................................................................................274 Анимация как new Timer.................................................................................................274 Время и временная шкала...............................................................................................282 Определение анимации....................................................................................................283 Интеграция анимации......................................................................................................286 Мультимедиа.............................................................................................................................289 Аудио......................................................................................................................................290 Видео.......................................................................................................................................292 Чего мы достигли?...................................................................................................................294 Глава 6. Данные........................................................................................................................295 Принципы работы с данными.............................................................................................295 Модель данных в .NET.....................................................................................................295 Всепроникающее связывание........................................................................................296 Преобразование данных..................................................................................................297 Ресурсы.......................................................................................................................................297 Основные принципы связывания......................................................................................302 Привязка к объектам CLR...................................................................................................308 Редактирование...................................................................................................................311 Привязка к XML......................................................................................................................316 Знакомство с XPath...........................................................................................................316 Привязка к XML................................................................................................................317 Шаблоны данных.....................................................................................................................321 Выбор шаблона...................................................................................................................324 Более сложное связывание.................................................................................................326 Иерархическое связывание............................................................................................326 Представления наборов...................................................................................................331 Отображение, управляемое данными.............................................................................338 Чего мы достигли?...................................................................................................................344 Глава 7. Действия....................................................................................................................345 Принципиальные основы действий..................................................................................345 Композиция элементов....................................................................................................345 Слабая связь.........................................................................................................................346 Декларативные действия.................................................................................................348 События.......................................................................................................................................348 Команды......................................................................................................................................352

See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.