Я разрабатываю приложение для Windows 8 Store. Я создал следующее пользовательский элемент управления:Раскадровка внутри пользовательского элемента управления не работает
<UserControl x:Class="RTV_W8.AnimatedImage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="using:RTV_W8" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignHeight="300" d:DesignWidth="400"> <UserControl.Resources> <!-- Animates the rectangle's opacity. --> <Storyboard x:Name="ContainerGridStoryboard"> <DoubleAnimation Storyboard.TargetName="MainGrid" Storyboard.TargetProperty="Opacity" From="0" To="1" Duration="0:0:5" AutoReverse="False"> </DoubleAnimation> </Storyboard> </UserControl.Resources> <Grid x:Name="MainGrid" CacheMode="BitmapCache"> <Image Stretch="UniformToFill" x:Name="PictureImage"/> </Grid> </UserControl>
со следующим файлом CS (только частично здесь отображается)
public AnimatedImage()
{
this.InitializeComponent();
this.Loaded += AnimatedImage_Loaded;
this.PictureImage.Loaded += PictureImage_Loaded;
}
void AnimatedImage_Loaded(object sender, RoutedEventArgs e)
{
this.ContainerGridStoryboard.Begin();
}
моя проблема заключается в раскадровке не запускается при загрузке изображения. Этот пользовательский элемент управления используется внутри другого пользовательского контроля. Я попробовал несколько вариантов, пытаясь заставить анимацию работать, ни одна из них не работала. Я хочу, чтобы пользовательский элемент управления отображал непрозрачность в представлении вместо того, чтобы просто извиваться. Хотя я могу видеть через точки останова, что ContainerGridStoryboard.Begin(); Выполняется ничего не происходит на экране
EDIT: В другом пользовательском контроле позже используется в таблице данных, если я применяю раскадровку на главной сетке, она работает, пользовательский элемент управления анимируется. Но если я применяю его во второй сетке (содержащейся в основной сетке) или любом другом элементе, анимация не работает. Вот почему я создал анимацию в первую очередь.
Одна вещь может быть в раскадровке, возможно, вам понадобится создать привязку ... – terrybozzio
Я установил свойство зависимостей (animatedImage имеет свойство Source) и привязку правильно. Я вижу изображения (привязка правильная). Но изображения просто появляются. Раскадровка (ведьма должна анимировать сетку и изображение) не работает. – ventura8
попробуйте с помощью триггера ... – terrybozzio