Динамическое создание объектов SilverLight 1.0

Опубликовано 22 Май | Автор LOB
Ключевые слова:, , ,

Стояла задача – сделать анимацию в Silverlight, формирование страницы в зависимости от некоторых условий (например, в зависимости от пользователя), и чтобы все хорошо смотрелось в IE и FF.

Создадим новый проект Silverlight 1.0. По-умолчанию он состоит из следующих файлов:
Default.html и Default.html.js
Scene.xaml и Scene.xaml.js
Silverlight.js

Default.html – содержит ссылки на все скриптовые файлы в заголовке и вызов функции createSilverlight() в теле.
Scene.xaml – собственно xaml-код приложения.
Silverlight.js и другие *.js-файлы содержат java-script, необходимый для работы.

(more…)

Popularity: 30% [?]

Add to zakladki:
Нет Комментариев | Примеры | Вся статья

Работа с видео (Часть 2)

Опубликовано 29 Апр | Автор LOB

Создание анимации

Продолжаем знакомство с возможностями MediaEllement, сейчас мы попробуем создать простую анимацию с использованием видео, на основе, которой в будущем вы сможете создать любую другую подобную анимацию, как перемещения, трансформация, поворот и сочетание, всех анимаций одновременно.

(more…)

Popularity: 44% [?]

Add to zakladki:
2 комментария | Примеры | Вся статья

Работа с видео (Часть 1)

Опубликовано 26 Апр | Автор LOB
Ключевые слова:, , ,

Работа с видео в SilverLight

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

И так приступим, к созданию простого приложения, которое будет отображать наше видео. Чтобы создать такое приложение вам необходимо использовать Blend Studio, а также необходимо, чтобы был установлен видео плеер Windows Media Player не ниже 10 версии, иначе Blend Studio не даст вам создавать видео (MediaElement будет выдавать соответствующее предупреждение), к сожалению, в данный момент MediaElement поддерживает только три видео формата wmv, asx, asf и два аудио mp3, wma. Думаю в будущем будет обеспечен более богатый набор видео форматов. Но пока Blend Studio при попытке использовать не соответствующий формат, и даже иногда с некоторыми файлами *.wmv вылетает с Exception – ом, думаю этот баг они тоже исправят в будущих версиях. Ну пока посмотрим как все это работает.

(more…)

Popularity: 45% [?]

Add to zakladki:
5 комментария | Примеры | Вся статья

Темплейты

Опубликовано 26 Апр | Автор LOB
Ключевые слова:, , ,

Что такое темплейт?

Темплейт – это заранее подготовленный шаблон, определяющий общий вид объекта, который можно применить к множеству объектов, что позволяет достичь гибкости и быстроты управлением внешним видом объектов, чего иногда не позволяет сделать стили.

Стили имеют ограниченные возможности изменения внешнего вида объекта, если хотите полностью изменить внешний вид объекта без применения методы и событий объектов, вам необходимо использовать темплейты.

(more…)

Popularity: 44% [?]

Add to zakladki:
Нет Комментариев | Примеры | Вся статья

Стили и их примение

Опубликовано 16 Апр | Автор LOB
Ключевые слова:,

Стили

Наверно в современном компьютерном мире всем знакомо понятие стиля. Особенно это понятие близко, тем, кто работает и бывает в Интернете. И так Что такое стиль? Стиль – это общее представление объекта в пространстве включающие его визуальные свойства, а также его положение в пространстве или положение относительно его родительского контейнера. И так для чего же нужны стили? Стили нужны для того, чтобы упростить управление свойствами отображения объектов, которые имеют общие свойства. Для этого общие свойства объединяются в один стиль и применяются к определенному типу объектов. Если брать антологию в WEB – это HTML и CSS. Для легкого управления видом страницы используют каскадные таблицы стилей, что не только упрощает разработку, но так же делает код оптимальным, освобождая его от лишних тегов, и позволяет сделать его более понятным.

И так попробуем понять, зачем нужно использовать стили, как их применять, и в чем их преимущество.

(more…)

Popularity: 45% [?]

Add to zakladki:
Нет Комментариев | Примеры | Вся статья

Знакомство с анимацией Microsoft SilverLights

Опубликовано 30 Сентябрь | Автор admin

Ну что продолжим с вами знакомиться с практической частью создания Silverlight. И так как я отношусь по большой части к дизайнером, то больше всего меня интересует создание анимации, чем сегодня с вами и займемся. Так как мы только знакомимся с вами с этой программой, то сегодня попробуем сделать с вами очень простую анимацию в буквально несколько кадров.
Запускаем наш Expression Blend 2, создаем новый проект (кто не занеет как, смотрим тут). Выбираем инструмент - Перо, и рисуем кривую похожую на морскую волну
Animation SilverLight

Затем откройте вкладку Properties, и выберите для заливки соответствующий синий цвет, у нас же все-таки волна должна получиться.
Animation SilverLight

Сейчас перейдем непосредственно к анимации, для этого в панели Object and TimeLine выбираем Create new Storyboard, нажав для этого “+”. В появившемся окне вводим название нашей шкалы,снимаем галочку с пункта Create as a Resource и нажимаем кнопку ОК.
Animation SilverLight

В панели Object and TimeLine мы видим, что появилась временная шкала (напоминает шкалу во Flash). Выбираем инструмент Direct Selection, перетягиваем ползунок на 1, и деформируем нашу волну, после этого опять перетягиваем, ползунок на значение 0, и нажимаем кнопку Record Keyframe, видим что появилось два кадра.
Animation SilverLight

Выделяем нулевой кадр копируем его и перетягивает шкалу на значение - 2, и вставляем туда первый кадр, можем сейчас попробывать проиграть анимацию. Однако у нас анимация прогрывается только один раз, чтоб поставить ее на зацикливание кликаем по наше шкале (на название шкалы - в нашем случае Wave), выделив ее, и в закладке Properties в поле RepeatBehavior вписываем значение Forever.
Animation SilverLight

Просматриваем нашу анимацию в браузере, чтобы сделать анимацию более реальной, можно выделить все ваши кадры и в окне Easing перетянуть ползунки, так чтоб анимация выглядела более реально.
Animation SilverLight

Ну вот и произошло наше первое знакомстов с анимацией в SilverLights, с чем собственно всех и поздравляю)

Popularity: 100% [?]

Add to zakladki:
Нет Комментариев | Новости, Примеры | Вся статья

Ну вот и пришло время практики.. Сегодня мы немного потренируемся и попробуем сотворить чего Silverlight-оского ;)
Начало статьи тут….
Итак начнемс, вы уже должны были скачать и установить Expression Blend, если Вы этого не сделали, то смотрим тут, что и как необходима скачать и установить.
Запускаем Microsoft Expression Blend, кликаем New Project, и конечно выбираем SilverLight Application, указав папку в которой будут храниться исходники.
Screen SilverLight Expression Blend
Выберите ОК, и новый проект будет создан.
Структура вполне стандартная, и думаю кто работал с различными графическими редакторами, как Flash, разобраться будет не сложно. Единственное в верхнем углу расположено меню доступа к основным файлам проекта.
Screen SilverLight Expression Blend
Т.е. проект содержит по умолчанию HTML страницу, код JavaScript содержащейся на этой странице, XAML документ.
Silverlight.js содержит код загрузки и иллустрирует пример управления SilverLight. Он представлен как часть Silverlight SDK.
Default.html - стандартная Web страница. Она содержит три ссылки на JavaScript, указывающие на Silverlight.js, Default.html.js , и Scene.xaml.js (который содержит обработчик событий определенных в XAML).
Итак мы займемся с вами созданием UI для Video Player.
Добавьте любой видео файл к вашему проекту. Чтобы сделать это, щелкните правой кнопкой мышки на Project Files в верху экрана, и выберите Add Existing Item… Выбираем любой видеофайл (Добавляем WMF и версия Microsoft Windows Player должна быть не ниже 10) и нажимаем ОК
Screen SilverLight Expression Blend
Файл появится в Project Explorer, и, Медиа элемент будет добавлен на главную страницу. Вы можете теперь просмотреть ваш проект в браузере, который воспроизведет ваше видео! Также можно остановить автоматическое воспроизведение видео, редактируя XAML. Выберите XAML (из двух:Design&XAML) таблицу, откроется окно редактирования XAML. Просто нужно лишь отредактировать тег MediaElement, и установите атрибут AutoPlay=False.
Screen SilverLight Expression Blend
Запускаем - смотрим, все работает!
Добавьте два текстовых блока на поле с текстом Play и соответственно Stop и назовите их Play_txt и Stop_txt, после этого ваш XAML файл дожен выглядеть следующим образом (что самое удобное, ошибки видны сразу на панели Errors).

<canvas>
xmlns="http://schemas.microsoft.com/client/2007"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Width="640" Height="480"
Background="White"
x:Name="Page";
<mediaelement x:name="You_Roll_wmv" width="352">
Height="288" Source="You Roll.wmv"
Stretch="Fill" Canvas.Left="134"
Canvas.Top="94" AutoPlay="False";
<textblock x:name="Play_txt" width="40" height="25" canvas.left="106">
 canvas.top="411" text="Play" textwrapping="Wrap";
<textblock x:name="Stop_txt" width="38" height="25" canvas.left="167">
canvas.top="411" text="Stop" textwrapping="Wrap";
</textblock></textblock></mediaelement>
</canvas>

Затем добавьте описание обработчика событий для блоков текста в XAML. Для этого используется свойство MouseLeftButtonDown (интуитивно понятно, что действует по нажатию левой клавиши мыши).
Итак для Play_txt добавляем действие DoPlay, для Stop_txt - DoStop, и соответственно участок с текстом в XAML выглядет следующим образом:

<textblock x:name="Play_txt" width="40" height="25">
canvas.left="106" canvas.top="411" text="Play" textwrapping="Wrap"
MouseLeftButtonDown="DoPlay"&gt;;
<textblock x:name="Stop_txt" width="38" height="25" canvas.left="167">
canvas.top="411" text="Stop" textwrapping="Wrap"
MouseLeftButtonDown="DoStop"&gt;;
</textblock></textblock>

Теперь когда пользаватель щелкнет мышкой по одному из текстовых блоков, мы сможем обработать это событие при помощи JavaScript. Обработка Событий в JavaScript записывается здесь Page.xaml.js.
Так как мы определили функции по нажатию, как DoPlay и DoStop, запишим их соответсвенно в Page.xaml.js. Код должен выгдедеть следующим образом:

function DoPlay(sender, eventArgs)
{
var theHost = document.getElementById("SilverlightControl");
var theMedia = theHost.content.findName("YouRoll_wmv");
theMedia.Play();
}

function DoStop(sender, eventArgs)
{
var theHost = document.getElementById("SilverlightControl");
var theMedia = theHost.content.findName("YouRoll_wmv");
theMedia.Stop();
}

Screen SilverLight Expression Blend
Все можем тестировать. Нажимаем на текстовый блок Play - ролик начинает проигрываться, нажимаем на Stop - останавливается. Поздравляю мы сделали первый проект при помощи Silverlight!!!

Popularity: 90% [?]

Add to zakladki:
1 комментарий | Примеры | Вся статья