3. http://www.slideshare.net/IgorShkulipa 3
Класс «Четырехугольник»
public class Rectangle
{
public Rectangle()
{}
private double width;
private double height;
private double area;
public string Width {
get { return Convert.ToString(width); }
set { width = Convert.ToDouble(value); }
}
public string Height {
get { return Convert.ToString(height); }
set { height = Convert.ToDouble(value); }
}
public string Area {
get {
area = width * height;
return Convert.ToString(area);
}
set {
area = width*height;
}
}
}
9. http://www.slideshare.net/IgorShkulipa 9
Анимации
В настоящее время в WPF используются три подхода к анимации (линейная
интерполяция, ключевые кадры и пути), ничто не мешает создавать классы
анимации, которые модифицируют значения на основе совершенно другого
подхода. Единственное требование — класс анимации должен модифицировать
значения с течением времени. В пространстве имен
System.Windows.Media.Animation описаны несколько классов анимации:
• 17 классов использующих анимацию методом интерполяции;
• 22 класса использующих анимацию ключевого кадра;
• 3 класса использующих анимацию на основе пути.
Все эти классы анимации унаследованы от абстрактного класса
ИмяТипаAnimationBase, реализующего несколько основополагающих аспектов.
Он предоставляет основу для создания собственных классов анимации. Если тип
данных поддерживает более одного типа анимации, то все его классы анимации
наследуются от абстрактного базового класса. Например, DoubleAnimation и
DoubleAnimationUsingKeyFrames — оба являются наследниками
DoubleAnimationBase.
Этими 42 классами содержимое пространства имен System.Windows.Media.Animation
не исчерпывается. Каждая анимация ключевого кадра также работает с
собственным классом ключевого кадра и классом коллекции ключевых кадров.
Так что в сумме пространство имен System.Windows.Media.Animation содержит
более 100 классов.
13. http://www.slideshare.net/IgorShkulipa 13
Архитектурный паттерн MVVM
• Модель (Model), так же, как в
классическом паттерне MVC, Модель
представляет собой фундаментальные
данные, необходимые для работы
приложения (классы, структуры).
• Вид/Представление (View) так
же, как в классическом паттерне MVC,
Вид — это графический интерфейс, то
есть окно, кнопки и.т.п.
• Модель вида (ViewModel, что
означает «Model of View») является с
одной стороны абстракцией Вида, а с
другой предоставляет обертку данных
из Модели, которые подлежат
связыванию. То есть она содержит
Модель, которая преобразована к
Виду, а так же содержит в себе
команды, которыми может
пользоваться Вид, чтобы влиять на
Модель.