<Grid Background="#252525">
<XmlDataProvider x:Key="DataDS" Source="gallery.xml" ></XmlDataProvider>
Title="3D Gallery" Height="800" Width="1200" WindowStartupLocation="CenterScreen">
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
</Gallery>Как видите в тэге Source задается путь к картинке, в Description ее описание, в тэге Rotation - угол, на который будем поворачивать картинку. Конечно, в реальном приложении подобная коллекция будет получаться скорее всего динамически, например из б/д или из коллекции изображений, хранящихся на компьютере пользователя, но здесь я ограничился простым XML-файлом, созданным для демонстрации.6) Теперь добавим новый источник данных XmlDataProvider для этой коллекции в файле главного окна (MainWindow.xaml) в ресурсах Window, чтобы затем использовать его в качестве контекста данных для ListBox. Разметка главного окна на данном этапе должна выглядеть примерно следующим образом:<Window x:Class="_3D_Gallery.MainWindow"
<Rotation>-30</Rotation>
<Description>Auto 2</Description>
<Source>Images/img2.jpg</Source>
<Rotation>-40</Rotation>
<Description>Auto 1</Description>
<Source>Images/img1.jpg</Source>
</Application.Resources>(если вы используете Visual Studio 11, то этот код добавиться автоматически при создании словаря).4) Добавим теперь в проект несколько изображений (Project --> Add Existing Item). Для изображений я обычно использую папку Images, но вы можете добавить их в произвольное место в проекте.5) Добавим XML-файл для перелинковки изображений в приложении (я назвал его gallery.xml). Структура этого файла выглядит так:<?xml version="1.0" encoding="utf-8" ?>
</ResourceDictionary.MergedDictionaries>
<ResourceDictionary Source="ListBoxGalleryTemplate.xaml"></ResourceDictionary>
<ResourceDictionary.MergedDictionaries>
В данном небольшом посте я бы хотел описать мощь использования шаблонов в WPF на примере создания интерактивной галереи изображений: Итак в качестве каркаса для данной галереи будет использоваться элемент ListBox, шаблон которого мы и будем изменять. Но для начала давайте выполним следующие простые шаги, необходимые для работоспособности данного примера:1) Создайте новый проект WPF в среде Visual Studio и присвойте ему имя, допустим, 3D Gallery.2) Добавьте в проект новый словарь ресурсов (Project --> Add New Item --> Resource Dictionary) и присвойте ему имя, допустим, ListBoxGalleryTemplate.xaml.3) Далее необходимо добавить ссылку на этот словарь в проект. Для этого откройте файл App.xaml и добавьте следующий код:<Application.Resources>
Добавлено 5 месяцев(а) Alexandr_Erohin
3D галерея используя шаблоны WPF
3D галерея используя шаблоны WPF - Форум программистов .NET
Комментариев нет:
Отправить комментарий