NativeFileDialogNET 2.0.2
dotnet add package NativeFileDialogNET --version 2.0.2
NuGet\Install-Package NativeFileDialogNET -Version 2.0.2
<PackageReference Include="NativeFileDialogNET" Version="2.0.2" />
paket add NativeFileDialogNET --version 2.0.2
#r "nuget: NativeFileDialogNET, 2.0.2"
// Install NativeFileDialogNET as a Cake Addin #addin nuget:?package=NativeFileDialogNET&version=2.0.2 // Install NativeFileDialogNET as a Cake Tool #tool nuget:?package=NativeFileDialogNET&version=2.0.2
NativeFileDialogNET
NativeFileDialogNET is a C# binding for the nativefiledialog-extended library. This project allows you to use native file dialog functionalities in your C# applications.
Usage
Here is a simple example of how to use the library:
using System.Text;
using NativeFileDialogNET;
using var selectFileDialog = new NativeFileDialog()
.SelectFile()
.AddFilter("Text Files", "*.txt") // Optionally add filters
.AddFilter("All Files", "*.*") // Optionally add filters
.AllowMultiple(); // Optionally allow multiple selections
DialogResult result = selectFileDialog.Open(out string[]? output, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));
StringBuilder builder1 = new();
if (result == DialogResult.Okay && output != null)
{
foreach (string file in output)
{
builder1.Append(file).Append(", ");
}
}
Console.WriteLine(result == DialogResult.Okay ? $"Selected file(s): {builder1}" : "User canceled the dialog.");
using var selectFolderDialog = new NativeFileDialog()
.SelectFolder()
.AllowMultiple(); // Optionally allow multiple selections
result = selectFolderDialog.Open(out string[]? output2, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments));
StringBuilder builder2 = new();
if (result == DialogResult.Okay && output2 != null)
{
foreach (string file in output2)
{
builder2.Append(file).Append(", ");
}
}
Console.WriteLine(result == DialogResult.Okay ? $"Selected folder(s): {builder2}" : "User canceled the dialog.");
using var saveFileDialog = new NativeFileDialog()
.SaveFile()
.AddFilter("Text Files", "*.txt") // Optionally add filters
.AddFilter("All Files", "*.*"); // Optionally add filters
result = saveFileDialog.Open(out string? saveFile, Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "DefaultName.txt");
Console.WriteLine(result == DialogResult.Okay ? $"Selected file: {saveFile}" : "User canceled the dialog.");
Contributions are welcome! Please feel free to submit a pull request.
License
This project is licensed under the zlib License. See the LICENSE file for details.
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
-
net8.0
- No dependencies.
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Added linux, macos runtimes and added "AllowMultiple" function to be used to allow users select multiple folders/files see BasicUsage project for more info