WPF ShowDialog retorna null imediatamente na segunda chamada

Eu acho que isso é um bug na estrutura do WPF, sem entrar em profundidade do meu programa e porque eu estou fazendo o que estou fazendo, eu escrevi um aplicativo de teste simples para provar minha teoria.

Esta questão pode ser confirmada? Quais são possíveis soluções alternativas para uma série de diálogos a serem executados antes de colocar o aplicativo em seu loop de execução?

using System;
using System.Collections.Generic;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Windows;

namespace ShowDialogWindow
{
  /// <summary>
  /// Interaction logic for App.xaml
  /// </summary>
  public partial class App : Application
  {
    protected override void OnStartup(StartupEventArgs e)
    {
       Window testWindow = new Window();
       testWindow.ShowDialog();
       testWindow.Close();
       // THE CODE BELOW WILL NOT SHOW THE NEXT WINDOW
       Window testWindow2 = new Window();
       testWindow2.ShowDialog();
       testWindow2.Close();
    }
  }
}
Atualizar:

Claro que posso mudar meu design para acomodar esse comportamento. O que eu estava tentando fazer era muito simples, no entanto.

Eu tenho derivado meuMyApplication deApplication. NoMain(), Inicio uma série de verificações de início, por exemplo, informações de licença, tela inicial, verificação de conectividade e configuração, etc. Quando eu deixo tudo claro, eu ligoMyApplicatiom.Run(MyMainForm).

Esse design é baseado em um aplicativo normal do Windows que funciona sem problemas.

Muito obrigado pela sua ajuda, e vou lembrar que você não pode ligarShowDialog() antesapplication.Run() como simplesmente innitializa um desligamento. Eu teria pensado, porém, que uma seqüência de desligamento só deve ser iniciada após umApp.Run() instrução.

Por favor, corrija-me se estou entendendo isso errado.

questionAnswers(2)

yourAnswerToTheQuestion