Анимация видимости от скрытого к свернутому и наоборот

Я пытаюсь добиться чего-то похожего на представление сообщений iPhone. При нажатии кнопки кнопка удаления будет выдвигаться для каждого сообщения, а при нажатии кнопки «Готово» кнопки удаления будут скользить. Я смог добиться этого с помощью mvvm, за исключением эффекта скольжения . Вот стиль, который я мог бы написать с моими ограниченными знаниями:

<Style TargetType="Border">
    <Style.Triggers>
        <DataTrigger Binding="{Binding ShowDeleteButton}" Value="false">
            <Setter Property="Visibility" Value="Collapsed"/>
        </DataTrigger>
    </Style.Triggers>
</Style>

Здесь "ShowDeleteButton" является логическим свойством в модели представления. Это прекрасно работает. но схлопывание и "становление видимым" происходит резко и очень быстро. Мне нужна скользящая анимация. Обратите внимание, что по мере исчезновения кнопок удаления остальные элементы управления должны занимать оставшееся пространство, а по мере появления кнопки существующие элементы управления должны уменьшаться и освобождать место для кнопок. Я попробовал анимацию раскадровки, но даже через пару часов я не могу понять странные ошибки, которые она выдает. Вот код:

<DataTrigger Binding="{Binding ShowDeleteButton}" Value="false">
     <DataTrigger.EnterActions>
          <BeginStoryboard>
               <Storyboard BeginTime="0:0:1">
                  <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visiblity">
                     <DiscreteObjectKeyFrame Value="{x:Static Visibility.Collapsed}" />
                  </ObjectAnimationUsingKeyFrames>
                </Storyboard>
           </BeginStoryboard>
      </DataTrigger.EnterActions>
      <DataTrigger.ExitActions>
            <BeginStoryboard>
               <Storyboard BeginTime="0:0:1">
                 <ObjectAnimationUsingKeyFrames Storyboard.TargetProperty="Visiblity">
                     <DiscreteObjectKeyFrame Value="{x:Static Visibility.Visible}" />
                 </ObjectAnimationUsingKeyFrames>
               </Storyboard>
            </BeginStoryboard>
      </DataTrigger.ExitActions>
</DataTrigger>

Кто-нибудь может помочь душе в беде?

с уважением

14
задан akjoshi 22 May 2012 в 13:42
поделиться