0

在我的窗口上,我有一个 ViewBox 控件,其中包含一个自定义进度条。我在设计模式下将其 Visibility 设置为 Collapsed,因为我只需要在特定时刻(登录应用程序期间)显示它。

在我的进度条(用户控件)中,我有 VisibilityChanged 事件的事件处理程序,我在其中停止和启动我的动画。

当用户单击登录按钮时,我需要显示此 ViewBox,直到登录完成并在成功后再次折叠它。但是,当我(在后面的代码中)设置 ViewBox.Visibility = Visible 时,它​​不会出现。

谁能告诉我为什么,或者如何解决?

XAML:

    <Viewbox x:Name="cpProgress" Width="50" Height="50" HorizontalAlignment="Center"   VerticalAlignment="Bottom" Grid.Row="1" Visibility="Collapsed" >
        <lc:CircularProgress />             
    </Viewbox>

谢谢

4

2 回答 2

1

更改ViewBox.Visibility = VisiblecpProgress.Visibility = Visible确保 Grid 为第 1 行定义了适当的行高。

于 2013-02-05T13:11:42.183 回答
0

我终于解决了这个问题。这真的很简单:)。我刚刚忘记了如果我在同一个线程中运行登录过程,因为我的窗口在其中,UI 将挂起,直到登录完成。因此解决方案是生成一个新线程,在其上下文中运行登录并等待completed在 UI 线程中设置标志。登录过程必须以异步方式运行,因此 UI 可以绘制我的用户控件。

于 2013-02-05T16:09:43.647 回答