Масштабирование анимации C# Wpf ⇐ C#
-
Anonymous
Масштабирование анимации C# Wpf
Я хочу добавить эффект анимации в свой проект Wpf. Анимация должна медленно масштабировать объект на панели холста.
Я нашел хорошую статью на сайте CodeProject. Но он приближается к левому верхнему углу. Я хочу приблизиться к нужному объекту или точке.
Это коды ниже.
https://www.codeproject.com/Tips/860914 ... x5967587xx
private void btnAnimate_Click(отправитель объекта, RoutedEventArgs e) { // Возможно, мы уже установили для LayoutTransform значение ScaleTransform. // Если нет, сделайте это сейчас. вар масштабер = mCanvas.LayoutTransform как ScaleTransform; если (скалер == ноль) { масштабер = новый ScaleTransform(1.0, 1.0); mCanvas.LayoutTransform = масштабатор; } // Нам понадобится объект DoubleAnimation для управления // свойства ScaleX и ScaleY. Аниматор DoubleAnimation = новый DoubleAnimation() { Продолжительность = новая продолжительность(TimeSpan.FromMilli Seconds(600)), }; // Переключение масштаба между 1,0 и 1,5. если (scaler.ScaleX == 1,0) { аниматор.То = 1,5; } еще { аниматор.To = 1,0; } Scaler.BeginAnimation(ScaleTransform.ScaleXProperty, аниматор); Scaler.BeginAnimation(ScaleTransform.ScaleYProperty, аниматор); }
Я хочу добавить эффект анимации в свой проект Wpf. Анимация должна медленно масштабировать объект на панели холста.
Я нашел хорошую статью на сайте CodeProject. Но он приближается к левому верхнему углу. Я хочу приблизиться к нужному объекту или точке.
Это коды ниже.
https://www.codeproject.com/Tips/860914 ... x5967587xx
private void btnAnimate_Click(отправитель объекта, RoutedEventArgs e) { // Возможно, мы уже установили для LayoutTransform значение ScaleTransform. // Если нет, сделайте это сейчас. вар масштабер = mCanvas.LayoutTransform как ScaleTransform; если (скалер == ноль) { масштабер = новый ScaleTransform(1.0, 1.0); mCanvas.LayoutTransform = масштабатор; } // Нам понадобится объект DoubleAnimation для управления // свойства ScaleX и ScaleY. Аниматор DoubleAnimation = новый DoubleAnimation() { Продолжительность = новая продолжительность(TimeSpan.FromMilli Seconds(600)), }; // Переключение масштаба между 1,0 и 1,5. если (scaler.ScaleX == 1,0) { аниматор.То = 1,5; } еще { аниматор.To = 1,0; } Scaler.BeginAnimation(ScaleTransform.ScaleXProperty, аниматор); Scaler.BeginAnimation(ScaleTransform.ScaleYProperty, аниматор); }
Мобильная версия