SlideShare a Scribd company logo
Silverlight5Евгений ЖарковSilverlight MVP & MCTS
Отрисовка текста
Character Spacing
МногоколоночностьRichTextBoxRichTextBoxOverflowRichTextBoxOverflow
Многоколоночность
МногоколоночностьRichTextBoxRichTextBoxOverflowRichTextBoxOverflowRichTextBoxOverflowRichTextBoxOverflow
Многоколоночность
Native Windows
Неограниченное количество кликовНеограниченное количество кликов (двойной, тройнойи т.д.)
Различные поведения приложения:
Word использует двойное нажатие для выделения слова, тройное нажатие для выделения параграфа
Safari 3, Firefox 3, & IE7: тройное нажатие выделяет весь текст внутри элементаНеограниченное количество кликов
XAML DebuggingРаньше:
Ищешь информацию о проблемах со связями в Output Window
Создаешь только для отладки конвертеры значений, привязываешь ко всем связям, расставляешь внутри точки остановы
Теперь:
Ставить точки останова в XAML при связке
Устанавливать точки останова во время runtime, как это делается с обычным кодом
Использовать точки останова с условием
Наблюдать за значениями, источниками, ошибками и т.п.
Заходить в код конвертеровНеявные шаблоны данныхРаботаю по принципу неявных стилейМожно использовать в любом content или items control’еСвязаны с типом данных: классом, структурой, но не интерфейсом
Обычные (явные) шаблоны данныхPete BrownJon GallowayJoe StagnerDataResulting PresentationDataTemplateJesse Libertyclass Tweet : TimelineItem {…}class DirectMessage : TimelineItem {…}class Notification : TimelineItem {…}…TimelineItem[] items = new TimelineItems[]{  new Tweet(“Pete Brown”, “pete.png”, “…”),  new Tweet(“Jon Galloway”, “jon.png” , “…”),  new Tweet(“Joe Stagner”, “joe.png” , “…”),  new Tweet(“Jesse Liberty”, “jesse.png” , “…”)};
Неявные шаблоны данныхPete BrownJon GallowayDataResulting PresentationImplicit DataTemplateTweetclass Tweet : TimelineItem {…}class DirectMessage : TimelineItem {…}class Notification : TimelineItem {…}…TimelineItem[] items = new TimelineItems[]{  new Tweet(“Pete Brown”, “pete.png”, “…”),  new Tweet(“Jon Galloway”, “jon.png” , “…”),  new DirectMessage(“Joe Stagner”, “joe.png” , “…”),  new Notification(“Jesse Liberty”, “jesse.png” , “…”)};DirectMessageJoe StagnerNotificationJesse Liberty
Расширения разметкиМожете создавать собственные расширения разметки
Позволяет запускать свой код во время разбора XAML
Примеры расширений разметки: {Binding}, {RelativeSource}и т.п.
Проще, чем пользовательские присоединяемые свойства (attached properties)
Более краткий синтаксис<TextBlock Text="{my:SumExtensionFirstNumber=5,SecondNumber=2}" />
Расширения разметкиРеализуйтеIMarkupExtension<T> (System.XAML)
Где T– тип возвращаемых данных (обязательно ссылочный тип)
Задайте свойства для параметров
Реализуйте ProvideValue()для возврата значенияpublicclassSumExtension: IMarkupExtension<object>{publicint FirstNumber { get; set; }publicint SecondNumber { get; set; }publicobjectProvideValue(IServiceProvider serviceProvider)  {return FirstNumber + SecondNumber;  }}
Ancestor RelativeSourceПозволяет связь к свойствам на родительском элементе управления
Привязка из коробки
Реализует возможности WPF
Использует Binding.RelativeSourceдля указания источника в дереве
ИспользуетAncestorTypeдля задания типа родителя
Использует AncestorLevelдля указания уровня в дереве<TextBlockText="{BindingTag, RelativeSource={RelativeSourceAncestorType=Grid, AncestorLevel=2}}"/>

More Related Content

PDF
ASP.NET MVC за пределами Hello World. Дятлов Александр D2D Just.NET
PPTX
Модульная структура. Цветцих Денис D2D Just.NET
PDF
МАИ, Сети ЭВМ, Лекция №5
KEY
Flex 4 gumbo framework
PDF
Что нам стоит DAL построить? Акуляков Артём D2D Just.NET
PPT
Moxy. Из чего состоит и как этим пользоваться
PPT
Moxy – реализация MVP под Android. С щепоткой магии
PPTX
Как легко и быстро поднять стартап на облаке
ASP.NET MVC за пределами Hello World. Дятлов Александр D2D Just.NET
Модульная структура. Цветцих Денис D2D Just.NET
МАИ, Сети ЭВМ, Лекция №5
Flex 4 gumbo framework
Что нам стоит DAL построить? Акуляков Артём D2D Just.NET
Moxy. Из чего состоит и как этим пользоваться
Moxy – реализация MVP под Android. С щепоткой магии
Как легко и быстро поднять стартап на облаке

What's hot (18)

PPTX
MVP, Moxy. Как правильно пользоваться
PDF
Bloch, bodoff руководство. сервлеты
DOCX
9 free rtos
PDF
Лекция #6. Введение в Django web-framework
PPTX
Moxy. Как правильно пользоваться? / Юрий Шмаков (Arello Mobile)
PPTX
Библиотека Google Closure Java Script
PPT
Cookies, session и другое в JSP
PPTX
библиотека Google closure java script
PPTX
Windows Phone 7 Game Development
PPT
Производительность и надежность Docsvision 5
PDF
The Old New ASP.NET
PPTX
Оптимизация производительности и нагрузочное тестирование в среде Visual Stud...
PPTX
Konstantin slisenko - Spring Framework
PDF
Алексей Андросов "Криокамера для статики"
PDF
Техническая разработка сайтов
PPT
ZFConf 2011: Воюем за ресурсы: Повышение производительности Zend Framework пр...
PPTX
base.network — пиринговый веб на JavaScript / Денис Глазков (Lazada Rus)
PDF
Разработка Enterprise-приложения на основе Spring Framework
MVP, Moxy. Как правильно пользоваться
Bloch, bodoff руководство. сервлеты
9 free rtos
Лекция #6. Введение в Django web-framework
Moxy. Как правильно пользоваться? / Юрий Шмаков (Arello Mobile)
Библиотека Google Closure Java Script
Cookies, session и другое в JSP
библиотека Google closure java script
Windows Phone 7 Game Development
Производительность и надежность Docsvision 5
The Old New ASP.NET
Оптимизация производительности и нагрузочное тестирование в среде Visual Stud...
Konstantin slisenko - Spring Framework
Алексей Андросов "Криокамера для статики"
Техническая разработка сайтов
ZFConf 2011: Воюем за ресурсы: Повышение производительности Zend Framework пр...
base.network — пиринговый веб на JavaScript / Денис Глазков (Lazada Rus)
Разработка Enterprise-приложения на основе Spring Framework
Ad

Viewers also liked (19)

PDF
Roslyn compiler as a service
PPTX
Tarea motivacional metodología
PPTX
Silverlight 4, есть ли жизнь на десктопе?
PPTX
Kinecting people
PDF
Mobile applications in a new way with React Native
PDF
Angular 2: Всех переиграл
PPTX
Кластеризация в OpenSource. Часть 1-я — отказоустойчивые системы
PPTX
Big Bang Theory of JavaScript Metro Applications
PPTX
Windows 8 app java script dark side
PDF
Как объяснить на платьях процесс разработки?
PDF
Cycle.js: Functional and Reactive
PDF
Creating windows store java script apps
PPT
5.thuế đánh vào tiết kiệm
PPT
4.thuế đánh vào cung lao động
PDF
Angular 2.0: Brighter future?
PDF
SignalR: Add real-time to your applications
PPT
3.thuế hiệu quả và thuế tối ưu
PPT
1. phân tích lý thuyết thuế tổng quan 0
PDF
Switch to React.js from AngularJS developer
Roslyn compiler as a service
Tarea motivacional metodología
Silverlight 4, есть ли жизнь на десктопе?
Kinecting people
Mobile applications in a new way with React Native
Angular 2: Всех переиграл
Кластеризация в OpenSource. Часть 1-я — отказоустойчивые системы
Big Bang Theory of JavaScript Metro Applications
Windows 8 app java script dark side
Как объяснить на платьях процесс разработки?
Cycle.js: Functional and Reactive
Creating windows store java script apps
5.thuế đánh vào tiết kiệm
4.thuế đánh vào cung lao động
Angular 2.0: Brighter future?
SignalR: Add real-time to your applications
3.thuế hiệu quả và thuế tối ưu
1. phân tích lý thuyết thuế tổng quan 0
Switch to React.js from AngularJS developer
Ad

Similar to Silverlight 5 (20)

PPTX
Введение в Microsoft Silverlight 3.0
PPTX
Microsoft Visual Studio 2010
PDF
Viacheslav Eremin about DOT NET (rus lang)
PDF
PPTX
CodeFest 2012. Сошников Д. — Разработка мобильных приложений на платформе Mic...
PPTX
архитектура .Net
PPTX
Что нового в Visual Studio 2010 и .Net 4.0
PPTX
What's new in Visual Studio 2012
PDF
Silverlight 2
PPTX
ПартФорум DIRECTUM 2013 - разработка прикладных решений
PPTX
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
PPT
MoITvation - презентация-размышление о роли IT в современном мире с конкретны...
PPTX
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
PPTX
Как писать красивый код или основы SOLID
PDF
Никита Цуканов - "Avalonia UI Cross-platform Open Source UI Framework"
PDF
UniversalApp "убийца" WPF или же это WPF+ ?
PPT
Api Microsoft Loghechkin
PPTX
Wargaming.net: Архитектура современных 3D движков
PPT
CodeFest 2013. Никонов Г. — Как мы разрабатываем приложения для Windows Phone...
Введение в Microsoft Silverlight 3.0
Microsoft Visual Studio 2010
Viacheslav Eremin about DOT NET (rus lang)
CodeFest 2012. Сошников Д. — Разработка мобильных приложений на платформе Mic...
архитектура .Net
Что нового в Visual Studio 2010 и .Net 4.0
What's new in Visual Studio 2012
Silverlight 2
ПартФорум DIRECTUM 2013 - разработка прикладных решений
Разгоняем ASP.NET Core / Илья Вербицкий (WebStoating s.r.o.)
MoITvation - презентация-размышление о роли IT в современном мире с конкретны...
Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
Как писать красивый код или основы SOLID
Никита Цуканов - "Avalonia UI Cross-platform Open Source UI Framework"
UniversalApp "убийца" WPF или же это WPF+ ?
Api Microsoft Loghechkin
Wargaming.net: Архитектура современных 3D движков
CodeFest 2013. Никонов Г. — Как мы разрабатываем приложения для Windows Phone...

More from Eugene Zharkov (15)

PDF
Monorepo: React + React Native. React Alicante
PDF
Monorepo: React Web & React Native
PDF
Create React Native App vs Expo vs Manually
PDF
Build automation with Fastlane
PDF
GraphQL and/or REST
PDF
React Native Animation
PDF
React Native: Hurdle Race
PDF
Burn your grass with react native
PDF
Фронтенд сказки
PDF
How to be a good frontend developer
PDF
Что там в summary
PDF
Elm: give it a try
PDF
AngularJS: Good parts
PDF
Angular.JS: Do it right
PPTX
WinRT Holy COw
Monorepo: React + React Native. React Alicante
Monorepo: React Web & React Native
Create React Native App vs Expo vs Manually
Build automation with Fastlane
GraphQL and/or REST
React Native Animation
React Native: Hurdle Race
Burn your grass with react native
Фронтенд сказки
How to be a good frontend developer
Что там в summary
Elm: give it a try
AngularJS: Good parts
Angular.JS: Do it right
WinRT Holy COw

Silverlight 5