WPF XAML网格可见性触发器
我在网格的第一行上有一条状态消息,我希望它在可见性改变时滑入滑出。WPF XAML网格可见性触发器,wpf,xaml,animation,triggers,visibility,Wpf,Xaml,Animation,Triggers,Visibility,我在网格的第一行上有一条状态消息,我希望它在可见性改变时滑入滑出。 第一个可见性触发器工作正常,可以快速打开第一个网格行。我一加上“崩溃”触发器,就什么都不起作用了。当可见性设置为“折叠”时,如何反转动画以滑动关闭 <Grid Grid.Row="0" Height="55" Visibility="{Binding StatusMessageVisibility, Mode=TwoWay}"> <Grid.Style> <Style Tar
第一个可见性触发器工作正常,可以快速打开第一个网格行。我一加上“崩溃”触发器,就什么都不起作用了。当可见性设置为“折叠”时,如何反转动画以滑动关闭
<Grid Grid.Row="0" Height="55" Visibility="{Binding StatusMessageVisibility, Mode=TwoWay}">
<Grid.Style>
<Style TargetType="Grid">
<Style.Triggers>
<Trigger Property="Visibility" Value="Visible">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Height" From="0" To="55" Duration="0:0:.1" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
<Trigger Property="Visibility" Value="Collapsed">
<Trigger.EnterActions>
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetProperty="Height" From="55" To="0" Duration="0:0:.1" />
</Storyboard>
</BeginStoryboard>
</Trigger.EnterActions>
</Trigger>
</Style.Triggers>
</Style>
</Grid.Style>
<TextBlock Text="Hi There" />
</Grid>
您应该删除网格中的
可见性
绑定,并使用绑定到StatusMessageVisibility
属性的数据触发器
。如果绑定栅格的可见性,则一旦栅格折叠,它就会折叠,您将无法看到动画
另外,对于折叠状态,不要使用两个带有entreactions
的数据触发器,而是使用一个带有ExitAction
的数据触发器:
在我的情况下,默认情况下网格必须折叠,但如果我从网格中删除绑定,它要么始终可见,要么始终折叠,这取决于我在网格上初始化可见性的方式,并且datatriggers从不启动。看起来datatrigger不更新网格可见性。我能做什么?看起来datatrigger不更新网格可见性