在Silverlight ChildWindow关闭动画期间,用户可以单击任何按钮

时间:2012-09-25 18:05:39

标签: silverlight animation childwindow

我正在使用Silverlight 5开发一个丰富的用户界面。我有很多ChildWindows。 子窗口有一些与命令绑定的按钮。我意识到如果调用Child Window Close方法,则开始关闭动画。但是在动画期间,用户可以单击任何按钮,这会导致意外情况。为了防止这种情况,我需要在关闭请求时立即取消绑定所有按钮。我不喜欢把这个逻辑放在任何地方。你有更好的解决方案吗?

<Grid x:Name="LayoutRoot" DataContext="{StaticResource ResourceKey=viewModel}">
    <StackPanel>
        <TextBlock Text="{Binding ConfirmMessage}" HorizontalAlignment="Center" Margin="5"/>
        <StackPanel Orientation="Horizontal" HorizontalAlignment="Center">
            <Button Width="120" Height="30" Content="Yes" Margin="5" Command="{Binding ConfirmedCommand}"/>
            <Button Width="120" Height="30" Content="No" Margin="5" Command="{Binding RejectedCommand}"/>
        </StackPanel>
    </StackPanel>
</Grid>

为了澄清,请使用包含上述内容的简单子窗口。并将ConfirmedCommand和RejectedCommand绑定到执行信息性消息框的简单命令。 尝试关闭子窗口与右上角的关闭按钮。在动画期间,快速单击其中一个按钮。你会看到这条消息。

编辑:我删除了关闭动画,它以另一种方式解决了问题。对于那些想要动画的人来说,原始问题仍然存在。

0 个答案:

没有答案