Added SelectFilesHandler
This commit is contained in:
@@ -141,6 +141,7 @@ public static class IServiceCollectionExtensions
|
||||
|
||||
services.AddHandler<WriteClipboardHandler>();
|
||||
services.AddHandler<SelectFoldersHandler>();
|
||||
services.AddHandler<SelectFilesHandler>();
|
||||
|
||||
services.AddHandler<ClassicDesktopStyleApplicationHandler>(nameof(IClassicDesktopStyleApplicationLifetime));
|
||||
services.AddHandler<SingleViewApplicationHandler>(nameof(ISingleViewApplicationLifetime));
|
||||
@@ -174,6 +175,7 @@ public static class IServiceCollectionExtensions
|
||||
|
||||
services.AddHandler<WriteClipboardHandler>();
|
||||
services.AddHandler<SelectFoldersHandler>();
|
||||
services.AddHandler<SelectFilesHandler>();
|
||||
|
||||
services.AddHandler<ContentControlHandler>(nameof(ContentControl));
|
||||
services.AddHandler<FrameHandler>(nameof(Frame));
|
||||
|
||||
@@ -0,0 +1,20 @@
|
||||
namespace Toolkit.Foundation;
|
||||
|
||||
public class SelectFilesHandler(IFileProvider fileProvider) :
|
||||
IHandler<SelectionEventArgs<FileFilter>, IReadOnlyCollection<string>?>
|
||||
{
|
||||
public async Task<IReadOnlyCollection<string>?> Handle(SelectionEventArgs<FileFilter> args,
|
||||
CancellationToken cancellationToken)
|
||||
{
|
||||
if (args.Sender is FileFilter filter)
|
||||
{
|
||||
if (await fileProvider.SelectFiles(filter)
|
||||
is { Count: > 0 } files)
|
||||
{
|
||||
return files;
|
||||
}
|
||||
}
|
||||
|
||||
return default;
|
||||
}
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
namespace Toolkit.Foundation;
|
||||
|
||||
|
||||
public class SelectFoldersHandler(IFolderProvider folderProvider) :
|
||||
IHandler<SelectionEventArgs<FolderFilter>, IReadOnlyCollection<string>?>
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user