2014-12-29 3 views
2

У меня есть страница.Применение индивидуального стиля ко всем моим кнопкам на странице

Когда нажата кнопка, я хочу, чтобы она прошла до прозрачности 50%.

Раньше у меня был синий экран кнопки по умолчанию при нажатии, и я удалил его с помощью VisualState на моей странице (удалив стили по умолчанию для нажатия кнопки).

Теперь я хочу применить стиль прозрачности.

Я изменил мою разметку следующим образом:

<VisualState x:Name="Pressed"> 
    <Storyboard> 
     <PointerDownThemeAnimation Storyboard.TargetName="Grid"/> 
      <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Opacity"> 
       <DiscreteObjectKeyFrame KeyTime="0" Value="50"></DiscreteObjectKeyFrame> 
      </ObjectAnimationUsingKeyFrames> 
    </Storyboard> 
</VisualState> 

и это одна из моих кнопки:

<Button Name="btnDel" Grid.Row="4" Grid.Column="2" Width="75" Height="75" HorizontalAlignment="Center" > 
    <Button.Background> 
     <ImageBrush ImageSource="ms-appx:///Images/del.png" Stretch="Uniform"/> 
    </Button.Background> 
</Button> 

и ошибка, я получаю:

целевой анимации не указано.

+0

Ваш' 'ObjectAnimationUsingKeyFrames' не хватает Storyboard.TargetName' - изменение * Непрозрачность *, но вы не указали какой элемент. – Romasz

+0

Привет, Ромаш, спасибо, что пожалел меня :). Это все новое для меня и немного аутичное. Я считаю, что чтение файлов справки MSDN не идеальное. Если я хочу повлиять на все изображения на своей странице, я бы предположил, что я не указываю имя элемента? Очевидно, я ошибаюсь, но я просто не знаю, как добиться того, чего хочу. Является ли непрозрачность достаточным свойством собственности? Нет никакого intellisense, поэтому я не знаю .. –

ответ

1

Вам нужно будет использовать DoubleAnimation оживить Grid «s Opacity, как это -

<VisualState x:Name="Pressed"> 
    <Storyboard> 
     <PointerDownThemeAnimation Storyboard.TargetName="Grid"/> 
     <DoubleAnimation Duration="0" To="0.5" Storyboard.TargetProperty="(UIElement.Opacity)" Storyboard.TargetName="Grid"/> 
    </Storyboard> 
</VisualState> 
+0

привет, спасибо за ваш ответ. Где бы я положил эту линию разметки, пожалуйста? спасибо –

+0

См. мой обновленный ответ. –

+0

HI, да, вот где я его положил. Но не работает. Кнопка при нажатии не изменяется? –

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