Итак, я пытаюсь сделать некоторые анимации во время удаления элемента из ItemsControl, который прикреплен к ObservableCollectio<Item>
. Я знаю, что не могу сделать это в событии выгрузки, потому что просто слишком поздно выполнять какую-либо анимацию, поэтому я попытался сделать это с помощью DataTrigger
Мой файл xaml
выглядит так:
<DataTemplate DataType="{x:Type MyApp:Item}">
<Border x:Name="ItemBorder">
<Label Content="{Binding Path=Name}" />
</Border>
<DataTemplate.Triggers>
<DataTrigger Binding="{Binding Path=Removing}" Value="True">
<DataTrigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Duration="0:0:1" From="1.0" To="0.0"
Storyboard.TargetProperty="(Border.Opacity)" />
</Storyboard>
</BeginStoryboard>
</DataTrigger.EnterActions>
</DataTrigger>
</DataTemplate.Triggers>
</DataTemplate>
и мой класс Item
просто:
public class Item : INotifyPropertyChanged
{
public event PropertyChangedEventHandler PropertyChanged = delegate { };
private bool removing;
public bool Removing {
get
{
return removing;
}
set
{
removing = value;
PropertyChanged(this, new PropertyChangedEventArgs("Removing"));
}
}
// same with `Name` property
}
Я хотел бы запустить анимацию, установив item.Removing = true
, но ничего не происходит.
Что я делаю неправильно?
Storyboard.TargetName
? - person Dennis   schedule 19.09.2013