Partilhar via


Como abrir uma caixa de diálogo comum (WPF .NET)

Este artigo demonstra como você pode exibir uma caixa de diálogo comum do sistema no Windows Presentation Foundation (WPF). O Windows implementa diferentes tipos de caixas de diálogo reutilizáveis que são comuns a todos os aplicativos, incluindo caixas de diálogo para selecionar arquivos e imprimir.

Como essas caixas de diálogo são fornecidas pelo sistema operacional, elas são compartilhadas entre todos os aplicativos executados no sistema operacional. Essas caixas de diálogo fornecem uma experiência de usuário consistente e são conhecidas como caixas de diálogo comuns. Como um usuário usa uma caixa de diálogo comum em um aplicativo, ele não precisa aprender a usar essa caixa de diálogo em outros aplicativos.

Uma caixa de mensagem é outra caixa de diálogo comum. Para obter mais informações, consulte Como abrir uma caixa de mensagem.

Caixa de diálogo Abrir arquivo

A caixa de diálogo abrir arquivo é usada pela funcionalidade de abertura de arquivo para recuperar o nome de um arquivo a ser aberto.

Uma caixa de diálogo Abrir indicando a localização para recuperar o ficheiro apresentado de uma aplicação WPF.

A caixa de diálogo de arquivo aberto comum é implementada como a classe OpenFileDialog e está localizada no namespace Microsoft.Win32. O código a seguir mostra como criar, configurar e mostrar a caixa de diálogo.

// Configure open file dialog box
var dialog = new Microsoft.Win32.OpenFileDialog();
dialog.FileName = "Document"; // Default file name
dialog.DefaultExt = ".txt"; // Default file extension
dialog.Filter = "Text documents (.txt)|*.txt"; // Filter files by extension

// Show open file dialog box
bool? result = dialog.ShowDialog();

// Process open file dialog box results
if (result == true)
{
    // Open document
    string filename = dialog.FileName;
}
' Configure open file dialog box
Dim dialog As New Microsoft.Win32.OpenFileDialog()
dialog.FileName = "Document" ' Default file name
dialog.DefaultExt = ".txt" ' Default file extension
dialog.Filter = "Text documents (.txt)|*.txt" ' Filter files by extension

' Show open file dialog box
Dim result As Boolean? = dialog.ShowDialog()

' Process open file dialog box results
If result = True Then
    ' Open document
    Dim filename As String = dialog.FileName
End If

Para obter mais informações sobre a caixa de diálogo abrir arquivo, consulte Microsoft.Win32.OpenFileDialog.

Caixa de diálogo Salvar arquivo

A caixa de diálogo Salvar arquivo é usada pela funcionalidade de salvamento de arquivos para recuperar o nome de um arquivo a ser salvo.

Uma caixa de diálogo Salvar como mostrando o local para salvar o arquivo mostrado de um aplicativo WPF.

A caixa de diálogo comum de salvar arquivo é implementada como a classe SaveFileDialog e está localizada no namespace Microsoft.Win32. O código a seguir mostra como criar, configurar e mostrar a caixa de diálogo.

// Configure save file dialog box
var dialog = new Microsoft.Win32.SaveFileDialog();
dialog.FileName = "Document"; // Default file name
dialog.DefaultExt = ".txt"; // Default file extension
dialog.Filter = "Text documents (.txt)|*.txt"; // Filter files by extension

// Show save file dialog box
bool? result = dialog.ShowDialog();

// Process save file dialog box results
if (result == true)
{
    // Save document
    string filename = dialog.FileName;
}
' Configure save file dialog box
Dim dialog As New Microsoft.Win32.SaveFileDialog()
dialog.FileName = "Document" ' Default file name
dialog.DefaultExt = ".txt" ' Default file extension
dialog.Filter = "Text documents (.txt)|*.txt" ' Filter files by extension

' Show save file dialog box
Dim result As Boolean? = dialog.ShowDialog()

' Process save file dialog box results
If result = True Then
    ' Save document
    Dim filename As String = dialog.FileName
End If

Para obter mais informações sobre a caixa de diálogo Salvar arquivo, consulte Microsoft.Win32.SaveFileDialog.

Caixa de diálogo Abrir pasta

Importante

A caixa de diálogo Abrir pasta está disponível no .NET 8.0 e posterior.

A caixa de diálogo Abrir pasta é usada pelo usuário para selecionar uma ou mais pastas e devolvê-las ao programa. Por exemplo, se o programa exibiu informações sobre uma pasta, como a quantidade de arquivos e os nomes de arquivo na pasta, você pode usar a caixa de diálogo Abrir pasta para permitir que o usuário escolha a pasta.

Uma caixa de diálogo Abrir pasta mostrando a pasta Imagens com a pasta Rolo da câmera selecionada, mostrada a partir de um aplicativo WPF.

A caixa de diálogo comum de pasta aberta é implementada como a classe OpenFolderDialog e está localizada no namespace Microsoft.Win32. O código a seguir mostra como criar, configurar e mostrar a caixa de diálogo.

// Configure open folder dialog box
Microsoft.Win32.OpenFolderDialog dialog = new();

dialog.Multiselect = false;
dialog.Title = "Select a folder";

// Show open folder dialog box
bool? result = dialog.ShowDialog();

// Process open folder dialog box results
if (result == true)
{
    // Get the selected folder
    string fullPathToFolder = dialog.FolderName;
    string folderNameOnly = dialog.SafeFolderName;
}
' Configure open folder dialog box
Dim dialog As New Microsoft.Win32.OpenFolderDialog()

dialog.Multiselect = True
dialog.Title = "Select a folder"

' Show open folder dialog box
Dim result As Boolean? = dialog.ShowDialog()

' Process open folder dialog box results
If result = True Then

    ' Get multiple folder names
    For index = 0 To dialog.FolderNames.Length
        ' Get the selected folder
        Dim fullPathToFolder As String = dialog.FolderNames(index)
        Dim folderNameOnly As String = dialog.SafeFolderNames(index)
    Next

End If

Para obter mais informações sobre a caixa de diálogo de pasta aberta, consulte Microsoft.Win32.OpenFolderDialog.

A caixa de diálogo de impressão é usada pela funcionalidade de impressão para escolher e configurar a impressora na qual um usuário deseja imprimir dados.

Uma caixa de diálogo de impressão mostrada a partir de um aplicativo WPF.

A caixa de diálogo de impressão comum é implementada como a classe PrintDialog e está localizada no namespace System.Windows.Controls. O código a seguir mostra como criar, configurar e mostrar um.

// Configure printer dialog box
var dialog = new System.Windows.Controls.PrintDialog();
dialog.PageRangeSelection = System.Windows.Controls.PageRangeSelection.AllPages;
dialog.UserPageRangeEnabled = true;

// Show save file dialog box
bool? result = dialog.ShowDialog();

// Process save file dialog box results
if (result == true)
{
    // Document was printed
}
' Configure printer dialog box
Dim dialog As New System.Windows.Controls.PrintDialog()
dialog.PageRangeSelection = System.Windows.Controls.PageRangeSelection.AllPages
dialog.UserPageRangeEnabled = True

' Show save file dialog box
Dim result As Boolean? = dialog.ShowDialog()

' Process save file dialog box results
If result = True Then
    ' Document was printed
End If

Para obter mais informações sobre a caixa de diálogo de impressão, consulte System.Windows.Controls.PrintDialog. Para obter uma discussão detalhada sobre a impressão no WPF, consulte Visão geral da impressão.

Ver também