Главная » WPF » Исполнение приложений  в браузере

0

Говоря о навигации,  люди чаше всего представляют себе приложение, испол# няемое в браузере, например, www.msn.com. WPF#приложения могут исполнять# ся как в автономном  окне, так и внутри  браузера. XAML#приложения для брау# зера (XBAP  – XAML Browser Application) запускаются в окне браузера. Они не устанавливаются на локальную  машину навечно и обычно работают в «песочни# це», которой .NET доверяет лишь частично.

Не существует  универсального ответа на вопрос, когда лучше писать XBAP, в когда стандартное приложение. Во#первых, это зависит от предполагаемого  пользо# вателя. С браузерными приложениями работать удобнее (пользователь может прос# то уйти в другое место, а не запускать отдельную программу), и они обычно лучше интегрируются с привычным потоком работ (пользователь сам решает, когда войти в приложение, а когда выйти из него). Традиционные же приложения более модаль# ны (пользователь либо запустил программу, либо нет) и позволяют реализовать бо# лее жесткий контроль (обычно пользователь должен явно завершить программу).

Помимо модели работы пользователя, есть еще один вопрос: а может ли вооб#

ще приложение нормально  функционировать при наличии  налагаемых  браузе# ром ограничений.  Браузерное приложение не может  поместить  значок  в меню Пуск,  установить  обработчики  для расширения имен файлов  или оставить  еще какой#нибудь постоянный след в компьютере  пользователя. Кроме того, обычно оно работает в среде с частичным  уровнем доверия,  где доступно  лишь подмно# жество функциональности .NET Framework19. Например, XBAP#приложению не#

Рис. 2.30. Просмотр XAML)файл в браузере

Независимая разметка

Помимо компиляции приложения в XBAP#файл, который может исполняться в браузере, мы можем просматривать и обычные XAML#файлы. При этом разре# шается использовать те же элементы, что и в XBAP#приложении, а наличие фай# ла с кодом не допускается. При публикации небольших документов или для прос# мотра простого содержимого  с поддержкой  навигации эта техника позволяет обойтись вовсе без компиляции.

Поскольку независимая XAML#разметка  не поддерживает наличия  файла  с кодом, то нельзя  употреблять тег x:Class, который  присутствовал в странице  для XBAP#приложения. Зато  можно  взять  ту же самую страницу,  сохранить  ее как файл  с расширением XAML, дважды  щелкнуть  по нему мышью, и вы увидите страницу в браузере (рис. 2.30).

<Page xmlns=’http://schemas.microsoft.com/winfx/2006/xaml/presentation’>

<TextBlock FontSize=’24pt’>Hello Loose XAML!</TextBlock>

</Page>

Чего мы достигли?

В этой главе мы рассмотрели центральный объект приложения – Application, а также основные компоненты, из которых приложение состоит: окна, страницы и пользовательские элементы управления. С помощью объектов Window мы можем реализовать различные оконные  модели, а страницы  и механизм  навигации поз# воляют легко создавать приложения, поддерживающие традиционную или функ# циональную  навигацию.   Службы,   предоставляемые  моделью  приложений  в WPF,  упрощают  управление  состоянием  для приложений любого вида. В WPF предпринята попытка построить  облегченную модель, достаточно гибкую для создания  разнообразных приложений и в то же время предоставляющую обшир# ный арсенал служб, помогающих их разрабатывать.

Источник: К. Андерсон  Основы  Windows Presentation Foundation. Пер. с англ. А. Слинкина — М.: ДМК Пресс, 2008 — 432 с.: ил.

По теме:

  • Комментарии