Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
, FolderPicker dosya sisteminden bir klasör seçme olanağı sağlar.
için FolderPickeraşağıdaki önkoşullar gereklidir:
için AndroidManifest.xmlizinler ekleyin:
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
Sözdizimi
C#
FolderPicker C# dilinde aşağıdaki gibi kullanılabilir:
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);
}
}
Klasör
Kayıt, Folder dosya sistemindeki bir klasörü temsil eder. Bu dosya şu özellikleri tanımlar:
- Yol bir Klasör yolu içerir.
- Ad bir Klasör adı içerir.
FolderPickerResult
'den PickAsyncbilgileri depolar.
Özellikler
| Özellik | Türü | Açıklama |
|---|---|---|
| Folder | Folder |
Folder Dosya sisteminde seçili klasörü temsil eden öğesini alır. |
| Özel durum | Exception |
Seçme işleminin Exception başarısız olup olmadığını alır. |
| IsSuccessful | bool |
İşlemin başarılı olup olmadığını belirleyen bir değer alır. |
Yöntemler
| Metot | Açıklama |
|---|---|
| EnsureSuccess | Seçme işleminin başarılı olup olmadığını doğrular. |
Uyarı
EnsureSuccess seçme işlemi başarısız olursa bir Exception oluşturur.
Yöntemler
| Metot | Açıklama |
|---|---|
| PickAsync | İzin ister ve dosya sisteminde bir klasör seçmeye izin verir. |
Bağımlılık Kaydı
Hizmet eklemek istiyorsanız, önce kaydetmeniz gerekir.
Sonraki değişikliklerle güncelleştirin MauiProgram.cs :
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();
}
}
Artık hizmeti şu şekilde ekleyebilirsiniz:
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);
}
}
Sağlama hakkında daha fazla ayrıntı için CancellationToken Microsoft belgelerine bakın.
Örnekler
.NET MAUI Community Toolkit Örnek Uygulaması'nda bunun bir örneğini FolderPicker iş başında bulabilirsiniz.
API
üzerinde için FolderPickerkaynak kodunu .NET MAUI Community Toolkit GitHub deposunda bulabilirsiniz.
.NET MAUI Community Toolkit