2013-11-11 3 views
0

У меня есть кнопка Button Button Button1. Я хочу изменить размер шрифта этой кнопки в анимации. Поэтому я написал код в функции Window_Loaded.Как Анимация кнопки FontSize в Wpf?

DoubleAnimation da = new DoubleAnimation(0, 25, new Duration(TimeSpan.FromSeconds(3))); 
      //da.TargetPropertyType = "Width";    
      da.RepeatBehavior = RepeatBehavior.Forever; 
      button1.BeginAnimation(Button.FontSizeProperty, da); 

Но я получил error-

Не удается анимировать свойство 'FONTSIZE' на 'System.Windows.Controls.Button' с использованием «System.Windows.Media.Animation .DoubleAnimation. Подробнее см. Внутреннее исключение .

1) Как увеличить размер шрифта кнопки? 2) Каковы свойства, которые я должен оживить в Button?

+0

Не могли бы вы прочитать внутреннее исключение и разместить его здесь ... это может быть ... полезно ... вы знаете ... :) – Noctis

+0

Где я могу увидеть InnerException @Noctis – Sagotharan

+0

Из памяти, Когда вы получите исключение, в визуальной студии вы можете нажать «подробнее», а одно из полей - «внутреннее исключение», вы можете переключить это, чтобы увидеть больше – Noctis

ответ

1

попробовать это в XAML:

<Window...> 
    <Window.Triggers> 
    <EventTrigger RoutedEvent="Window.Loaded"> 
     <EventTrigger.Actions> 
      <BeginStoryboard> 
       <Storyboard Duration="00:00:1"> 
        <DoubleAnimation Storyboard.TargetName="button1" From="6" To="25" Storyboard.TargetProperty="FontSize"/> 
       </Storyboard> 
      </BeginStoryboard> 
     </EventTrigger.Actions> 
    </EventTrigger> 
    </Window.Triggers> 

2) Какие свойства я должен анимировать в Баттона?

Целью анимации не должно быть DependencyProperty, если это то, о чем вы думаете. Все свойства могут быть целью анимации. Хотя стандартные классы анимации не поддерживают некоторые типы.

например, фон. вы можете анимировать Background.Color, используя ColorAnimation, но не Background сам, потому что нет BrushAnimation. однако вы можете реализовать пользовательскую анимацию для таких свойств.

+0

Пробовал ли вы этот код сэр. Bzs, а при реализации этого кода я получил ошибку. Невозможно преобразовать строку «Loaded» в атрибуте «RoutedEvent» в объект типа «System.Windows.RoutedEvent». RoutedEventConverter не может конвертировать из System.String. Ошибка в объекте 'System.Windows.EventTrigger' в файле разметки 'WpfApplication1; component/window1.xaml'. – Sagotharan

+1

Ваш код обработан Pls Changed RoutedEvent = «Загружен» в RoutedEvent = «Window.Loaded». – Sagotharan

+1

Спасибо за исправление. – Bijan

Смежные вопросы