From 02826ee2c80a57978040c1946894941ef3b9c1b4 Mon Sep 17 00:00:00 2001 From: tp1415926535 Date: Tue, 2 Jan 2024 03:08:25 +0000 Subject: [PATCH] =?UTF-8?q?=E5=8F=98=E9=87=8F=E8=B5=8B=E5=80=BC=E4=BF=AE?= =?UTF-8?q?=E5=A4=8D=EF=BC=9B=E6=96=87=E4=BB=B6=E5=A4=B9=E6=8C=89=E9=92=AE?= =?UTF-8?q?=E9=80=89=E6=8B=A9=E6=96=87=E4=BB=B6=E5=A4=B9=E8=80=8C=E4=B8=8D?= =?UTF-8?q?=E6=98=AF=E6=96=87=E4=BB=B6=20=E6=B5=8F=E8=A7=88=E6=96=87?= =?UTF-8?q?=E4=BB=B6=E5=A4=B9=E5=AE=89=E8=A3=85nuget=E5=8C=85=20WindowsAPI?= =?UTF-8?q?CodePack-Shell?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: tp1415926535 --- .../ViewModels/PacketViewModel.cs | 53 ++++++++++--------- 1 file changed, 28 insertions(+), 25 deletions(-) diff --git a/src/WPF/GeneralUpdate.Packet/ViewModels/PacketViewModel.cs b/src/WPF/GeneralUpdate.Packet/ViewModels/PacketViewModel.cs index d3e2b7f..804059d 100644 --- a/src/WPF/GeneralUpdate.Packet/ViewModels/PacketViewModel.cs +++ b/src/WPF/GeneralUpdate.Packet/ViewModels/PacketViewModel.cs @@ -1,4 +1,4 @@ -using CommunityToolkit.Mvvm.Input; +using CommunityToolkit.Mvvm.Input; using GeneralUpdate.AspNetCore.DTO; using GeneralUpdate.Core.Utils; using GeneralUpdate.Differential; @@ -10,6 +10,7 @@ using Microsoft.Win32; using System.IO; using System.Text; using System.Windows; +using Microsoft.WindowsAPICodePack.Dialogs; namespace GeneralUpdate.Packet.ViewModels { @@ -49,7 +50,7 @@ namespace GeneralUpdate.Packet.ViewModels public bool IsPublish { get => isPublish; set => SetProperty(ref isPublish, value); } public string Url { get => url; set => SetProperty(ref url, value); } public string PacketName { get => packetName; set => SetProperty(ref packetName, value); } - public string DriverDir { get => packetName; set => SetProperty(ref driverDir, value); } + public string DriverDir { get => driverDir; set => SetProperty(ref driverDir, value); } public AsyncRelayCommand SelectFolderCommand { @@ -146,33 +147,35 @@ namespace GeneralUpdate.Packet.ViewModels /// private async Task SelectFolderAction(string value) { - var openFileDialog = new OpenFileDialog(); - openFileDialog.InitialDirectory = @"D:\"; - openFileDialog.Filter = "All files (*.*)|*.*"; - if (openFileDialog.ShowDialog() == false) + using (var dialog = new CommonOpenFileDialog()) { - await ShowMessage("Pick options", "No results were selected !"); - return; - } - - string selectedFilePath = openFileDialog.FileName; - switch (value) - { - case "Source": - SourcePath = selectedFilePath; - break; + dialog.InitialDirectory = @"D:\"; + dialog.IsFolderPicker = true; + CommonFileDialogResult result = dialog.ShowDialog(); + if (result != CommonFileDialogResult.Ok) + { + await ShowMessage("Pick options", "No results were selected !"); + return; + } + string selectedFilePath = dialog.FileName; + switch (value) + { + case "Source": + SourcePath = selectedFilePath; + break; - case "Target": - TargetPath = selectedFilePath; - break; + case "Target": + TargetPath = selectedFilePath; + break; - case "Patch": - PatchPath = selectedFilePath; - break; + case "Patch": + PatchPath = selectedFilePath; + break; - case "Driver": - DriverDir = selectedFilePath; - break; + case "Driver": + DriverDir = selectedFilePath; + break; + } } } -- Gitee