Added SelectFilesHandler
This commit is contained in:
@@ -141,6 +141,7 @@ public static class IServiceCollectionExtensions
|
|||||||
|
|
||||||
services.AddHandler<WriteClipboardHandler>();
|
services.AddHandler<WriteClipboardHandler>();
|
||||||
services.AddHandler<SelectFoldersHandler>();
|
services.AddHandler<SelectFoldersHandler>();
|
||||||
|
services.AddHandler<SelectFilesHandler>();
|
||||||
|
|
||||||
services.AddHandler<ClassicDesktopStyleApplicationHandler>(nameof(IClassicDesktopStyleApplicationLifetime));
|
services.AddHandler<ClassicDesktopStyleApplicationHandler>(nameof(IClassicDesktopStyleApplicationLifetime));
|
||||||
services.AddHandler<SingleViewApplicationHandler>(nameof(ISingleViewApplicationLifetime));
|
services.AddHandler<SingleViewApplicationHandler>(nameof(ISingleViewApplicationLifetime));
|
||||||
@@ -174,6 +175,7 @@ public static class IServiceCollectionExtensions
|
|||||||
|
|
||||||
services.AddHandler<WriteClipboardHandler>();
|
services.AddHandler<WriteClipboardHandler>();
|
||||||
services.AddHandler<SelectFoldersHandler>();
|
services.AddHandler<SelectFoldersHandler>();
|
||||||
|
services.AddHandler<SelectFilesHandler>();
|
||||||
|
|
||||||
services.AddHandler<ContentControlHandler>(nameof(ContentControl));
|
services.AddHandler<ContentControlHandler>(nameof(ContentControl));
|
||||||
services.AddHandler<FrameHandler>(nameof(Frame));
|
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;
|
namespace Toolkit.Foundation;
|
||||||
|
|
||||||
|
|
||||||
public class SelectFoldersHandler(IFolderProvider folderProvider) :
|
public class SelectFoldersHandler(IFolderProvider folderProvider) :
|
||||||
IHandler<SelectionEventArgs<FolderFilter>, IReadOnlyCollection<string>?>
|
IHandler<SelectionEventArgs<FolderFilter>, IReadOnlyCollection<string>?>
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user