FolderPicker
Zapewnia FolderPicker
możliwość wybierania folderu z systemu plików.
Następujące warunki wstępne wymagane dla elementu FolderPicker
:
Dodaj uprawnienia do polecenia AndroidManifest.xml
:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Składnia
C#
Można FolderPicker
go użyć w następujący sposób w języku C#:
async Task PickFolder(CancellationToken cancellationToken)
{
var result = await FolderPicker.Default.PickAsync(cancellationToken);
if (result.IsSuccessful)
{
await Toast.Make($"The folder was picked: Name - {result.Folder.Name}, Path - {result.Folder.Path}", ToastDuration.Long).Show(cancellationToken);
}
else
{
await Toast.Make($"The folder was not picked with error: {result.Exception.Message}").Show(cancellationToken);
}
}
Folder
Rekord Folder
reprezentuje folder w systemie plików. Są w nim zdefiniowane następujące właściwości:
- Ścieżka zawiera ścieżkę folderu.
- Nazwa zawiera nazwę folderu.
FolderPickerResult
Przechowuje informacje z PickAsync
programu .
Właściwości
Właściwości | Type | Opis |
---|---|---|
Folder | Folder |
Pobiera element Folder reprezentujący wybrany folder w systemie plików. |
Wyjątek | Exception |
Pobiera wartość Exception , jeśli operacja wyboru nie powiodła się. |
IsSuccessful | bool |
Pobiera wartość określającą, czy operacja zakończyła się pomyślnie. |
Metody
Metoda | opis |
---|---|
EnsureSuccess | Sprawdza, czy operacja wyboru zakończyła się pomyślnie. |
Ostrzeżenie
EnsureSuccess
wyrzuci błąd Exception
, jeśli operacja wyboru nie powiodła się.
Metody
Metoda | opis |
---|---|
PickAsync | Pyta o uprawnienie i umożliwia wybranie folderu w systemie plików. |
Rejestracja zależności
Jeśli chcesz wstrzyknąć usługę, najpierw musisz ją zarejestrować.
Zaktualizuj MauiProgram.cs
przy użyciu następnych zmian:
public static class MauiProgram
{
public static MauiApp CreateMauiApp()
{
var builder = MauiApp.CreateBuilder();
builder
.UseMauiApp<App>()
.UseMauiCommunityToolkit();
// Register the FolderPicker as a singleton
builder.Services.AddSingleton<IFolderPicker>(FolderPicker.Default);
// Register the MainPage as transient to make sure it can resolve the IFolderPicker dependency.
builder.Services.AddTransient<MainPage>();
return builder.Build();
}
}
Teraz możesz wstrzyknąć usługę w następujący sposób:
public partial class MainPage : ContentPage
{
private readonly IFolderPicker folderPicker;
public MainPage(IFolderPicker folderPicker)
{
InitializeComponent();
this.folderPicker = folderPicker;
}
async Task PickFolder(CancellationToken cancellationToken)
{
var result = await folderPicker.PickAsync(cancellationToken);
result.EnsureSuccess();
await Toast.Make($"Folder picked: Name - {result.Folder.Name}, Path - {result.Folder.Path}", ToastDuration.Long).Show(cancellationToken);
}
}
Aby uzyskać więcej informacji na temat sposobu udostępniania CancellationToken
dokumentacji firmy Microsoft.
Przykłady
Przykład działania FolderPicker
można znaleźć w przykładzie przykładowym zestawu narzędzi .NET MAUI Community Toolkit.
interfejs API
Kod źródłowy można FolderPicker
znaleźć w repozytorium GitHub zestawu narzędzi .NET MAUI Community Toolkit.
.NET MAUI Community Toolkit