Я пытаюсь добиться чего-то похожего на вид сообщения iPhone. При нажатии кнопки кнопка удаления будет выходить за каждое сообщение, а при нажатии "сделать" кнопки удаления будут перемещаться. Я смог добиться этого с помощью mvvm, кроме эффекта скольжения. Вот стиль, который я мог бы написать с моим ограниченным знанием:
<Style TargetType="Border">
<Style.Triggers>
<DataTrigger Binding="{Binding ShowDeleteButton}" Value="false">
<Setter Property="Visibility" Value="Collapsed"/>
</DataTrigger>
</Style.Triggers>
</Style>
Здесь "ShowDeleteButton" - это свойство bool в модели представления. Это прекрасно работает. но рушится и "становится видимым" происходит внезапно и очень быстро. Мне нужна скользящая анимация. Обратите внимание, что по мере удаления кнопок удаления остальные элементы управления должны занимать остальное пространство, и, когда кнопка появляется, существующие элементы управления должны сокращаться и давать пространство кнопкам. Я пробовал с анимацией раскадровки, но даже через пару часов я не могу понять странные ошибки, которые он бросает. Вот код:
<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>
Кто-нибудь может помочь душе в беде?
рассматривает