小编fam*_*eis的帖子

基于网格可见性的WPF动画

我有一个网格开始崩溃.当用户单击该按钮时,后面的代码将可见性设置为可见.然后按钮XAML触发器使网格在3秒内从0增长到1925.

我试图找出XAML如何编程触发器来寻找网格的可见性.然后根据其状态使动画增长或缩小.因此,基于下面的代码,如果触发器确定可见性可见,则我想使网格从1925变为0,如果网格在按钮点击时显示折叠,则为0到1925.想要远离代码,知道UI中发生了什么.这就是为什么以后我将网格可见性绑定到属性.

XAML的主要组件

    <Grid Name="gridDisplay" Background="AliceBlue" Visibility="Collapsed">

    </Grid>



    <Button 
        Style="{StaticResource {x:Static ToolBar.ButtonStyleKey}}"
        Width="32" Height="32" FontSize="16" VerticalAlignment="Center" HorizontalAlignment="Right" Background="White" Click="Button_Click">
        &gt;

        <Button.Triggers>
            <EventTrigger RoutedEvent="Button.Click">
                <BeginStoryboard>
                    <Storyboard>
                        <DoubleAnimation 
                            Storyboard.TargetName="gridDisplay"
                            Storyboard.TargetProperty="Width"
                            From="0" To="1925" Duration="0:0:3" />
                    </Storyboard>
                </BeginStoryboard>
            </EventTrigger>
        </Button.Triggers>
    </Button>
Run Code Online (Sandbox Code Playgroud)

按钮事件

        //TODO: Bind grid to visibility property
        if (gridDisplay.Visibility == System.Windows.Visibility.Collapsed)
        {
            gridDisplay.Visibility = System.Windows.Visibility.Visible;
            (sender as Button).Content = "<";
        }
        else
        {
            gridDisplay.Visibility = System.Windows.Visibility.Collapsed;
            (sender as Button).Content = ">";
        }
Run Code Online (Sandbox Code Playgroud)

c# wpf animation xaml

1
推荐指数
1
解决办法
1899
查看次数

标签 统计

animation ×1

c# ×1

wpf ×1

xaml ×1