From 080b9f0aa98113bbf4ef174743f089a0d87bbc5f Mon Sep 17 00:00:00 2001 From: "David P.G" Date: Thu, 12 Jun 2025 18:56:25 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=AE=BE=E5=A4=87=E7=9A=84=E4=B8=80=E4=BA=9B=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Services/DeviceDialogService.cs | 18 ++++++++++++++---- Services/IDeviceDialogService.cs | 2 +- ViewModels/DevicesViewModel.cs | 14 +++++++++----- 3 files changed, 24 insertions(+), 10 deletions(-) diff --git a/Services/DeviceDialogService.cs b/Services/DeviceDialogService.cs index 82d5282..e22eac1 100644 --- a/Services/DeviceDialogService.cs +++ b/Services/DeviceDialogService.cs @@ -1,4 +1,5 @@ -using PMSWPF.Models; +using iNKORE.UI.WPF.Modern.Controls; +using PMSWPF.Models; using PMSWPF.ViewModels.Dialogs; using PMSWPF.Views.Dialogs; @@ -6,15 +7,24 @@ namespace PMSWPF.Services; public class DeviceDialogService : IDeviceDialogService { - public async Task ShowAddDeviceDialog(Device device) + public async Task ShowAddDeviceDialog() { + Device device = new Device(); DeviceDialogViewModel ddvm = new DeviceDialogViewModel(device) { Title = "添加设备" }; DeviceDialog dialog = new DeviceDialog(ddvm); - await dialog.ShowAsync(); - return device; + var res=await dialog.ShowAsync(); + if (res == ContentDialogResult.Primary) + { + return device; + } + else + { + return null; + } + } } \ No newline at end of file diff --git a/Services/IDeviceDialogService.cs b/Services/IDeviceDialogService.cs index 61a66b8..ad5a1a0 100644 --- a/Services/IDeviceDialogService.cs +++ b/Services/IDeviceDialogService.cs @@ -4,5 +4,5 @@ namespace PMSWPF.Services; public interface IDeviceDialogService { - Task ShowAddDeviceDialog(Device device); + Task ShowAddDeviceDialog(); } \ No newline at end of file diff --git a/ViewModels/DevicesViewModel.cs b/ViewModels/DevicesViewModel.cs index 78f6c23..1276ec8 100644 --- a/ViewModels/DevicesViewModel.cs +++ b/ViewModels/DevicesViewModel.cs @@ -29,11 +29,15 @@ public partial class DevicesViewModel : ViewModelBase { try { - Device device = new Device(); - await _deviceDialogService.ShowAddDeviceDialog(device); - DbDevice dbDevice = new DbDevice(); - device.CopyTo(dbDevice); - await _devicesRepositories.Add(dbDevice); + + Device device= await _deviceDialogService.ShowAddDeviceDialog(); + if (device != null) + { + DbDevice dbDevice = new DbDevice(); + device.CopyTo(dbDevice); + await _devicesRepositories.Add(dbDevice); + } + } catch (DbExistException e) {