2

WinRT に移植しようとしている Silverlight 4 ゲームがあります。Blend の FluidMoveBehavior を多用して、コンテナ間のアイテムの遷移をアニメートします (アイテムはコンテナ間でフロートします)。この機能は WinRT にはないようで、代わりのものが見つかりませんでした。

Silverlight では、この XAML がすべてを行います。

<ItemsPanelTemplate x:Key="TransitioningPanelTemplate">
    <StackPanel Orientation="Horizontal" Margin="0" Background="Transparent">
        <i:Interaction.Behaviors>
            <il:FluidMoveBehavior AppliesTo="Children" Duration="0:0:0.400" Tag="DataContext">
                <il:FluidMoveBehavior.EaseY>
                    <BackEase EasingMode="EaseInOut" Amplitude="0.35" />
                </il:FluidMoveBehavior.EaseY>
                <il:FluidMoveBehavior.EaseX>
                    <BackEase EasingMode="EaseInOut" Amplitude="0.35" />
                </il:FluidMoveBehavior.EaseX>
            </il:FluidMoveBehavior>
        </i:Interaction.Behaviors>
    </StackPanel>
</ItemsPanelTemplate>

この投稿で提案されているように遷移を調べましたが、これは単一のコンテナー内でのみ機能するようです。

この動作を可能にするトランジションの使用はありますか? そうでない場合、可能な代替案を知っている人はいますか?

4

1 に答える 1

0

これを試して

<ItemsPanelTemplate x:Key="TransitioningPanelTemplate">
<StackPanel Orientation="Horizontal" Margin="0" Background="Transparent">
     <StackPanel.ChildrenTransitions>
      <TransitionCollection>
<Your Transitions />
</TransitionCollection>
</StackPanel.ChildrenTransitions>
    <i:Interaction.Behaviors>
        <il:FluidMoveBehavior AppliesTo="Children" Duration="0:0:0.400" Tag="DataContext">
            <il:FluidMoveBehavior.EaseY>
                <BackEase EasingMode="EaseInOut" Amplitude="0.35" />
            </il:FluidMoveBehavior.EaseY>
            <il:FluidMoveBehavior.EaseX>
                <BackEase EasingMode="EaseInOut" Amplitude="0.35" />
            </il:FluidMoveBehavior.EaseX>
        </il:FluidMoveBehavior>
    </i:Interaction.Behaviors>
</StackPanel>

于 2012-11-16T08:44:32.927 に答える