Como abrir uma janela ou caixa de diálogo (WPF .NET)
Você pode criar suas próprias janelas e exibi-las no Windows Presentation Foundation (WPF). Neste artigo, você aprenderá a exibir janelas e caixas de diálogo modais e sem janela restrita.
Conceitualmente, uma janela e uma caixa de diálogo são a mesma coisa: elas são exibidas a um usuário para fornecer informações ou interação. Ambos são objetos de "janela". O design da janela e a forma como ela é usada é o que faz uma caixa de diálogo. Uma caixa de diálogo geralmente é pequena e exige que o usuário responda a ela. Para obter mais informações, consulte Visão geral das janelas do WPF e Visão geral das caixas de diálogo.
Se você estiver interessado em abrir caixas de diálogo do sistema operacional, consulte Como abrir uma caixa de diálogo comum.
Abrir como modal
Quando uma janela modal é aberta, ela geralmente representa uma caixa de diálogo. O WPF restringe a interação à janela modal e o código que abriu a janela pausa até que a janela seja fechada. Esse mecanismo fornece uma maneira fácil de solicitar dados ao usuário e aguardar sua resposta.
Use o ShowDialog método para abrir uma janela. O código a seguir instancia a janela e a abre modalmente. O código que abre a janela é pausado, aguardando que a janela seja fechada:
var window = new Margins();
window.Owner = this;
window.ShowDialog();
Dim myWindow As New Margins()
myWindow.Owner = Me
myWindow.ShowDialog()
Importante
Depois que uma janela é fechada, a mesma instância de objeto não pode ser usada para reabrir a janela.
Para obter mais informações sobre como lidar com a resposta do usuário a uma caixa de diálogo, consulte Visão geral das caixas de diálogo: processando a resposta.
Abrir como sem janela restrita
Abrir uma janela sem janela restrita significa exibi-la como uma janela normal. O código que abre a janela continua a ser executado à medida que a janela se torna visível. Você pode focar e interagir com todas as janelas sem janela restrita exibidas pelo seu aplicativo, sem restrições.
Use o Show método para abrir uma janela. O código a seguir instancia a janela e a abre sem janela restrita. O código que abre a janela continua a ser executado:
var window = new Margins();
window.Owner = this;
window.Show();
Dim myWindow As New Margins()
myWindow.Owner = Me
myWindow.Show()
Importante
Depois que uma janela é fechada, a mesma instância de objeto não pode ser usada para reabrir a janela.
Confira também
.NET Desktop feedback