0

私の Window には、カスタム プログレス バーを含む 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、グリッドの行 1 に適切な行の高さが定義されていることを確認します。

于 2013-02-05T13:11:42.183 に答える
0

私はついにこの問題の解決に至りました。それは本当に簡単です:)。ウィンドウが入っているのと同じスレッドでログイン プロセスを実行すると、ログインが完了するまで UI がハングすることを忘れていました。completedしたがって、解決策は、新しいスレッドを生成し、そのコンテキストでログインを実行し、UI のスレッドでフラグが設定されるのを待つことです。ログイン プロセスは非同期で実行する必要があるため、UI はユーザー コントロールを描画できます。

于 2013-02-05T16:09:43.647 に答える