J'ai actuellement une zone de liste dont l'élément sélectionné est lié à une propriété de mon ViewModel. Chaque fois que l'élément sélectionné n'est pas nul, je veux effectuer une animation dessus. Cependant, je continue d'obtenir l'erreur suivante: "Impossible de geler l'arborescence de la chronologie de Storyboard pour une utilisation entre threads" et de la recherche sorte de comprendre pourquoi cela se produit. Cependant, je ne suis pas sûr de l'approche que je dois adopter pour obtenir le comportement que je veux.WPF Animation "Impossible de geler l'arborescence de la chronologie de Storyboard pour une utilisation sur plusieurs threads"
<Storyboard x:Key="ShowItemEdit">
<DoubleAnimation
Storyboard.TargetName="lstItemList"
Storyboard.TargetProperty="ListBox.Width"
To="{Binding ActualWidth, ElementName=UserControl}"
Duration="0:0:0.40" />
...
</Storyboard>
<Style x:Key="ListStyle">
<Style.Triggers>
<DataTrigger Binding="{Binding SelectedItem, Converter={StaticResource IsNullConverter}}" Value="False">
<DataTrigger.EnterActions>
<BeginStoryboard Storyboard="{StaticResource ShowItemEdit}" />
</DataTrigger.EnterActions>
</DataTrigger>
</Style.Triggers>
</Style>
<ListBox x:Name="lstItemList" Style={StaticResource ListStyle}" SelectedItem="{Binding SelectedItem}">
...
</ListBox>
J'ai ajouté le code du storyboard. Je lie la propriété 'To' car je ne veux pas coder en dur la largeur. – jwarzech
C'est votre problème alors, je vais vous expliquer. –
Merci pour l'explication! Toute suggestion sur la façon dont je peux réaliser ce storyboard (avec liaison) sans avoir à connecter le datatrigger au contrôle? – jwarzech