Изменить ImageSource во время раскадровки в коде позади - PullRequest
0 голосов
/ 05 марта 2012

Мне нужно создать раскадровку, где я изменяю ImageSource моего Image-элемента управления, чтобы сделать его более плавным, но я понятия не имею, как это сделать, так как я новичок в раскадровках.

Может кто-нибудь объяснить мне, как это сделать?

Вот мой XAML: (CenterScaleImage - это всего лишь Image-ctrl с 2 дополнительными свойствами)

<Grid x:Name="LayoutRoot" DataContext="{Binding Main, Mode=OneWay, Source={StaticResource Locator}}" Background="White">
        <Controls:CenterScaleImage x:Name="Image" Margin="0" Source="{Binding PropVisibleImage}" ScaleFactor="{Binding PropScaleFactor}" CenterScaleX="{Binding PropScaleCenterX}" CenterScaleY="{Binding PropScaleCenterY}">
            <Controls:CenterScaleImage.RenderTransform>
                <TransformGroup>
                    <ScaleTransform ScaleY="{Binding PropScaleFactor}" ScaleX="{Binding PropScaleFactor}" CenterX="{Binding PropScaleCenterX}" CenterY="{Binding PropScaleCenterY}"/>
                    <SkewTransform/>
                    <RotateTransform/>
                    <TranslateTransform X="{Binding PropPanHorizontal}" Y="{Binding PropPanVertical}"/>
                </TransformGroup>
            </Controls:CenterScaleImage.RenderTransform>
        </Controls:CenterScaleImage>
    </Grid>

1 Ответ

1 голос
/ 05 марта 2012

Вы не можете изменить источник изображения как часть раскадровки.Анимации раскадровки требуют, чтобы значения интерполяции вычислялись между одним состоянием и следующим состоянием в анимированном переходе (анимация движения) - в этом сценарии замена изображений не имеет смысла.~ Лучше всего создать триггер данных или свойства для замены источника изображения, если это то, что вам нужно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...