0

作成中の WPF アプリケーションがあります。プログラムは、初期化時にスプラッシュ スクリーンを表示します。起動シーケンスのほとんどは、メイン ウィンドウが表示された後、バックグラウンド スレッドで実行する必要があります。私の問題は、必要なときにメイン ウィンドウが表示されないことです。

メイン ウィンドウの Window_Loaded イベント ハンドラは次のとおりです。

private void Window_Loaded( object sender, RoutedEventArgs e ) {
    if ( !DoInitialize() ) {
        shuttingDown = true;
        Application.Shutdown();
    }

    e.Handled = true;
}

private bool DoInitialize() {
    if ( !ReadConfiguration( Application.ConfigurationFilePath ) ) {
        return false;
    }

    Thread th = new Thread( new ThreadStart( FinishInitializing ) );
    th.SetApartmentState(ApartmentState.STA); 
    th.Start();

    ClockTimer = new DispatcherTimer( TimeSpan.FromSeconds( 1 ), DispatcherPriority.Background, UpdateClock, Dispatcher );
    ClockTimer.Start();

    return true;
}

ご覧のとおり、構成ファイルの読み取りを除いて、バックグラウンドを開始しThreadて初期化を終了し、DispatcherTimer. このタイマーは、ディスプレイ上のクロックを更新するために使用されます。

メインウィンドウの表示をトリガーするのは正確には何ですか?

トニー

4

1 に答える 1