WPF:当最终高度未知时,动画ListView的高度

Ray*_*Ray 4 .net wpf animation listview

我有一个ListView,它在我的XAML中非常简单地定义,就像这样

<ListView Name="myListVew" MaxHeight="200" Visibility="Collapsed">
    <ListView.View>
        <GridView>
            <GridViewColumn Header="Line" Width="Auto" DisplayMemberBinding="{Binding Line}" />
            <GridViewColumn Header="Error" Width="Auto" DisplayMemberBinding="{Binding Error}" />
        </GridView>
    </ListView.View>
</ListView>
Run Code Online (Sandbox Code Playgroud)

当我希望ListView出现时,我希望从0开始为列表视图的高度设置动画.问题是,我不知道ListView的最终高度,因为它将取决于其中显示的项目数量.无论如何这样做?

Ray*_*Ray 5

当你搜索解决方案的时间,将问题发布到论坛然后在10分钟后自己找到答案时,你不是讨厌它吗?

无论如何,我通过应用这样的布局比例变换来实现它

<DoubleAnimationUsingKeyFrames BeginTime="00:00:00" Storyboard.TargetName="ErrorDisplay" Storyboard.TargetProperty="(FrameworkElement.LayoutTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)">
    <SplineDoubleKeyFrame KeyTime="00:00:00" Value="0"/>
    <SplineDoubleKeyFrame KeyTime="00:00:00.3000000" Value="1"/>
</DoubleAnimationUsingKeyFrames>
Run Code Online (Sandbox Code Playgroud)

  • 这可能会让你满意,但它真的能回答你原来的问题吗?我以为你想增加控件的高度,但不要像你那样扩展它的内容. (6认同)