dotnet / dotnet/maui

Implement "desktop dialogs" e.g.: FileOpenDialog, FolderBrowserDialog, PrintDialog, etc.

Open
#4,795 2 comments 22 reactions 0 assignees View on GitHub
area-essentials good first issue legacy-area-desktop proposal/open t/desktop t/enhancement ☀️
Dominant language
C#
Stars
23.3k
Forks
2k
Avg merge
1d 15h
Merged PRs (30d)
290

Description

### Description

MAUI is the evolution of Xamarin, which was originally intended for mobile devices. However, MAUI expands the targets to include desktop applications. Desktop applications have a few features that are not at all, or less relevant in the mobile space. As a result, I can see there being a gap in the capabilities that are available.

In desktop applications we are used to having a few built-in dialogs that we can use to get desktop-like things done, which are not going to be available in MAUI. It would be great if we could have a few of these early in the life of MAUI to help us deliver apps without multiple people having to reinvent this wheel.

Dialogs that we are used to reaching for when building desktop apps include:

File Open (there is the FilePicker that might cover this scenario)
File Save As (not something that really exists in the mobile space; mobile OSes don't really support direct file system access)
Select Folder (again, not done in the mobile space very often)
Print, and perhaps Print Preview

If these could be added to a backlog, that would be much appreciated.

### Public API Changes

UI controls/components:

FileOpenDialog (unless FilePicker sufficiently meets this need)
SaveFileDialog
FolderBrowserDialog
PrintDialog
PrintPreviewDialog

### Intended Use-Case

My primary use case is applications built in MAUI that are intended to interact with the file system, such as importing, exporting and linking to external files from an application.

The secondary use case is applications that print out information, such as logs, notes, pictures or other created content.

Contributor guide

Open the contributing guide

Research direction

Start by reviewing the existing FilePicker, which the issue identifies as possibly covering file-open behavior. The issue names SaveFileDialog, FolderBrowserDialog, PrintDialog, and PrintPreviewDialog but provides no files, tests, platform scope, or implementation entry points. Done would require an agreed backlog scope and defined behavior for the requested desktop dialogs.

Written by the indexing model from the issue text.

Assessment

Tech stack
csharp
Domain
desktop
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.