вопрос анимации Silverlight - PullRequest
1 голос
/ 08 июня 2011

Кто-нибудь знает, что не так с разметкой ниже

<UserControl
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    x:Class="DoubleAnim.MainPage"
    Width="640" Height="480">
    <UserControl.Resources> 
        <Storyboard x:Name="Storyboard1">
            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(Canvas.Left)" Storyboard.TargetName="objectToAnimate">
                <EasingDoubleKeyFrame KeyTime="0" Value="0"/>
                <EasingDoubleKeyFrame KeyTime="0:0:1" Value="400"/>
            </DoubleAnimationUsingKeyFrames>                
        </Storyboard>
    </UserControl.Resources>

    <Grid x:Name="LayoutRoot" Background="White">
        <Rectangle x:Name="objectToAnimate" Fill="#FF0000F9" HorizontalAlignment="Left"  Canvas.Top="164"  Height="100" Stroke="Black" VerticalAlignment="Top" Width="192" RadiusY="8" RadiusX="8" >
        </Rectangle>
        <Button Content="Button" Height="23" HorizontalAlignment="Left" Margin="132,180,0,0" Name="button1" VerticalAlignment="Top" Width="75" Click="button1_Click" />
    </Grid>
</UserControl>

Все выглядит хорошо, но это не работает: ((Silverlight Доу знает, как анимировать canvas.top и canvas.left? Или, может быть, я пропустилчто-то?

Ответы [ 2 ]

4 голосов
/ 08 июня 2011

Вам нужен объект холста.Заменить сетку на холст.

2 голосов
/ 08 июня 2011

Присоединенные свойства Canvas.Top и Canvas.Left используются только в том случае, если Rectangle (или UIElement) размещен на панели Canvas . Сетка использует другую логику и вложенные свойства для размещения дочерних элементов.

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