Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
03.11.13 / ! / 0_Введение в WPF1.doc
Скачиваний:
52
Добавлен:
08.06.2015
Размер:
2.21 Mб
Скачать

Двухмерные формы

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

Интересная особенность фигур в том, что они могут не только отображаться; фигуры реализовывают многие возможности, ожидаемые от элементов управления, включая ввод с клавиатуры и ввод с помощью мыши. В следующем примере показано событие MouseUp обрабатываемого Ellipse.

XAML

Копировать

<Window

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

x:Class="SDKSample.EllipseEventHandlingWindow"

Title="Click the Ellipse">

<Ellipse Name="clickableEllipse" Fill="Blue" MouseUp="clickableEllipse_MouseUp" />

</Window>

VB

Копировать

Imports System.Windows ' Window, MessageBox

Imports System.Windows.Input ' MouseButtonEventArgs

Namespace SDKSample

Public Class EllipseEventHandlingWindow

Inherits Window

Public Sub New()

InitializeComponent()

End Sub

Private Sub clickableEllipse_MouseUp(ByVal sender As Object, ByVal e As MouseButtonEventArgs)

MessageBox.Show("You clicked the ellipse!")

End Sub

End Class

End Namespace

C#

Копировать

using System.Windows; // Window, MessageBox

using System.Windows.Input; // MouseButtonEventHandler

namespace SDKSample

{

public partial class EllipseEventHandlingWindow : Window

{

public EllipseEventHandlingWindow()

{

InitializeComponent();

}

void clickableEllipse_MouseUp(object sender, MouseButtonEventArgs e)

{

// Display a message

MessageBox.Show("You clicked the ellipse!");

}

}

}

На следующем рисунке показано, что именно создается с помощью приведенного выше кода.

Дополнительные сведения см. в разделе Обзор фигур и базовых средств рисования в приложении WPF. Ознакомительный пример см. в файле Shape Elements Sample.

Двухмерная геометрия

WPF предоставляет стандартный набор двухмерных (двухмерный) фигур. Однако, возможно, потребуется создать пользовательские фигуры для облегчения разработки настраиваемого Пользовательский интерфейс. В этих целях WPF предоставляет геометрические объекты. На следующем рисунке показано использование геометрий для создания пользовательской фигуры, которая может быть нарисована непосредственно, использоваться в качестве кисти, или использоваться для отсечения других фигур и элементов управления.

Объекты Path могут быть использованы для рисования замкнутых, открытых, составных фигур и даже кривых поверхностей.

Объекты Geometry могут использоваться для отсечения, проверки нажатия и отрисовки данных двухмерной графики.

Дополнительные сведения см. в разделе Общие сведения о классе Geometry. Ознакомительный пример см. в файле Geometries Sample.

Двухмерные эффекты

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

Дополнительные сведения см. в разделе Общие сведения о кистях WPF. Ознакомительный пример см. в файле Brushes Sample.

Трехмерная отрисовка

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

Дополнительные сведения см. в разделе Обзор трехмерной графики. Ознакомительный пример см. в файле 3-D Solids Sample.

Анимация

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

Дополнительные сведения см. в разделе Общие сведения об эффектах анимации. Ознакомительный пример см. в файле Animation Example Gallery.

Мультимедиа

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

Изображения

Изображения присутствуют в большинстве приложений, и WPF предоставляет несколько способов их использования. На следующем рисунке показан Пользовательский интерфейс со списком, в котором содержатся эскизные изображения. При выделении эскиза изображение показывается в полном размере.

Дополнительные сведения см. в разделе общих сведений Общие сведения об обработке изображений.

Видео и аудио

Элемент управления MediaElement способен воспроизводить видео и аудио, и является достаточно гибким, чтобы служить основой для пользовательского проигрывателя. Следующая разметка XAML реализовывает проигрыватель.

XAML

Копировать

<MediaElement

Name="myMediaElement"

Source="media/wpf.wmv"

LoadedBehavior="Manual"

Width="350" Height="250" />

Окно на следующем рисунке показывает элемент управления MediaElement в действии.

Дополнительные сведения см. в разделе Графика и мультимедиа.

Текст и типография

Для облегчения отрисовки текста высокого качества WPF предоставляет следующие возможности:

  • Поддержка шрифта OpenType.

  • Улучшения ClearType.

  • Высокая производительность, которая использует преимущества аппаратного ускорения.

  • Интеграция текста с мультимедиа, графикой и анимацией.

  • Механизмы резервирования и поддержки международного шрифта.

Для демонстрации интеграции текста с графикой на следующем рисунке показано применение художественного оформления текста.

Дополнительные сведения см. в разделе Оформление в WPF.

Документы

WPF предоставляет встроенную поддержку работы с тремя типами документов: документами нефиксированного формата, документами фиксированного формата и документами Формат XPS (XML Paper Specification). WPF также предоставляет службы для создания и просмотра документов, управления документами, добавления заметок, упаковки и печати документов.

Соседние файлы в папке !