Анимация непрозрачности ImageBrush в прямоугольнике в XAML - PullRequest
0 голосов
/ 28 апреля 2009

У меня есть ImageBrush в прямоугольнике, который я пытаюсь добавить при загрузке, увеличив непрозрачность с 0 до 100.

Вот что у меня есть:

    <Rectangle HorizontalAlignment="Left" Width="200" Stroke="#FF000000" StrokeThickness="0" Fill="{DynamicResource MyImageBrush}" >            
        <Rectangle.Resources>
            <ImageBrush x:Name="ImgBrush" x:Key="MyImageBrush" ImageSource="tower.jpg" Stretch="UniformToFill" Opacity="0" >
            </ImageBrush>                
        </Rectangle.Resources>   
        <Rectangle.Triggers>
            <EventTrigger RoutedEvent="Rectangle.Loaded">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation x:Name="FadeIn" Storyboard.TargetName="ImgBrush"  Storyboard.TargetProperty="Opacity" From="0" To="100" Duration="0:0:5"/>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>                              
        </Rectangle.Triggers>
    </Rectangle>

Выдается ошибка:

Имя 'ImgBrush' не может быть найдено в области имен 'System.Windows.Shapes.Rectangle'

(ImgBrush указывается в Storyboard.TargetName)

Что я могу сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 28 апреля 2009

Обошли это, анимируя непрозрачность всего прямоугольника, а не пытаясь анимировать весь imageBrush.

     <Rectangle Name="LeftRectangle" Opacity="0" HorizontalAlignment="Left" Width="200" Stroke="#FF000000" StrokeThickness="0" Fill="{DynamicResource MyImageBrush}" >            
        <Rectangle.Resources>
            <ImageBrush x:Name="ImgBrush" x:Key="MyImageBrush" ImageSource="tower.jpg" Stretch="UniformToFill" Opacity="100" >
            </ImageBrush>                
        </Rectangle.Resources>   
        <Rectangle.Triggers>
            <EventTrigger RoutedEvent="Rectangle.Loaded">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation x:Name="FadeIn" Storyboard.TargetName="LeftRectangle"  Storyboard.TargetProperty="Opacity" From="0" To="100" Duration="0:4:5"/>
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>                              
        </Rectangle.Triggers>
    </Rectangle>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...