Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
翻转动画后Silverlight屏幕模糊_Silverlight_Animation_Screen Resolution - Fatal编程技术网

翻转动画后Silverlight屏幕模糊

翻转动画后Silverlight屏幕模糊,silverlight,animation,screen-resolution,Silverlight,Animation,Screen Resolution,我创建了一个翻转动画,可以从项目列表转到编辑对话框。例如,用户看到一个项目列表,双击一个项目进行编辑,屏幕翻转以显示包含详细信息的编辑对话框 我有实际的动画工作,除了屏幕上的项目有点模糊。当我翻回到同样模糊的列表时 有人能说出原因吗。我在下面展示了我是如何完成翻转的 <ContentControl x:Name="EditPtrMainContent" HorizontalAlignment="Stretch" VerticalAlignment="Stretch

我创建了一个翻转动画,可以从项目列表转到编辑对话框。例如,用户看到一个项目列表,双击一个项目进行编辑,屏幕翻转以显示包含详细信息的编辑对话框

我有实际的动画工作,除了屏幕上的项目有点模糊。当我翻回到同样模糊的列表时

有人能说出原因吗。我在下面展示了我是如何完成翻转的

             <ContentControl x:Name="EditPtrMainContent" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
                <ContentControl.Resources>
                    <Storyboard x:Name="FlipToEditStart">
                        <DoubleAnimation From="0" To="90" Duration="0:0:0.3" Storyboard.TargetName="ContentProjection" Storyboard.TargetProperty="RotationY"/>
                    </Storyboard>
                    <Storyboard x:Name="FlipToEditEnd">
                        <DoubleAnimation From="270" To="360" Duration="0:0:0.3" Storyboard.TargetName="ContentProjection" Storyboard.TargetProperty="RotationY"/>
                    </Storyboard>

                    <Storyboard x:Name="FlipToListStart">
                        <DoubleAnimation From="0" To="-90" Duration="0:0:0.3" Storyboard.TargetName="ContentProjection" Storyboard.TargetProperty="RotationY"/>
                    </Storyboard>
                    <Storyboard x:Name="FlipToListEnd">
                        <DoubleAnimation From="-270" To="-360" Duration="0:0:0.3" Storyboard.TargetName="ContentProjection" Storyboard.TargetProperty="RotationY"/>
                    </Storyboard>
                </ContentControl.Resources>

                <ContentControl.Projection>
                    <PlaneProjection x:Name="ContentProjection"/>
                </ContentControl.Projection>

            </ContentControl>
如您所见,我在双击(或单击按钮)时开始动画的前半部分,并将动画设置为90度。然后,当这个动画完成时,我将ContentControl的内容更改为新屏幕,并启动第二个动画,使其从270度变为360度。通过编辑屏幕上的MVVM Light Messenger呼叫,我做了一个反向动画以返回列表。所有这些都可以正常工作,但正如我所说,屏幕变得有点模糊。我不是在想象它,因为编辑屏幕是一个视图/视图模型,也在其他地方使用,因此很容易比较。
在动画结束时是否需要执行某些操作以正确地重新绘制屏幕?

添加以下事件处理程序-360度或360度旋转会导致问题,必须在动画后替换为0

FlipToEditEnd.Completed += (a, b) => { ContentProjection.RotationY = 0.0; };
FlipToListEnd.Completed += (a, b) => { ContentProjection.RotationY = 0.0; };
FlipToEditEnd.Completed += (a, b) => { ContentProjection.RotationY = 0.0; };
FlipToListEnd.Completed += (a, b) => { ContentProjection.RotationY = 0.0; };