清理引用,将NavigatorServices更改为使用Message来实现导航的切换
This commit is contained in:
@@ -1,9 +1,8 @@
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public class DataTransformViewModel:ViewModelBase
|
||||
public class DataTransformViewModel : ViewModelBase
|
||||
{
|
||||
public override void OnLoaded()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,23 +1,13 @@
|
||||
using System.Collections.ObjectModel;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Input;
|
||||
using CommunityToolkit.Mvvm.Messaging;
|
||||
using HandyControl.Controls;
|
||||
using HandyControl.Data;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using PMSWPF.Data.Entities;
|
||||
using PMSWPF.Data.Repositories;
|
||||
using PMSWPF.Enums;
|
||||
using PMSWPF.Excptions;
|
||||
using PMSWPF.Extensions;
|
||||
using PMSWPF.Helper;
|
||||
using PMSWPF.Message;
|
||||
using PMSWPF.Models;
|
||||
using PMSWPF.Services;
|
||||
using PMSWPF.ViewModels.Dialogs;
|
||||
using PMSWPF.Views.Dialogs;
|
||||
using MessageBox = System.Windows.MessageBox;
|
||||
using Notification = PMSWPF.Models.Notification;
|
||||
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
@@ -26,11 +16,12 @@ public partial class DevicesViewModel : ViewModelBase
|
||||
private readonly IDeviceDialogService _deviceDialogService;
|
||||
private readonly DevicesRepositories _devicesRepositories;
|
||||
private readonly ILogger<DevicesViewModel> _logger;
|
||||
[ObservableProperty]
|
||||
private ObservableCollection<Device> _devices ;
|
||||
|
||||
public DevicesViewModel(IDeviceDialogService deviceDialogService, DevicesRepositories devicesRepositories,ILogger<DevicesViewModel> logger
|
||||
)
|
||||
[ObservableProperty] private ObservableCollection<Device> _devices;
|
||||
|
||||
public DevicesViewModel(IDeviceDialogService deviceDialogService, DevicesRepositories devicesRepositories,
|
||||
ILogger<DevicesViewModel> logger
|
||||
)
|
||||
{
|
||||
_deviceDialogService = deviceDialogService;
|
||||
_devicesRepositories = devicesRepositories;
|
||||
@@ -40,17 +31,16 @@ public partial class DevicesViewModel : ViewModelBase
|
||||
public async Task OnLoadedAsync()
|
||||
{
|
||||
var ds = await _devicesRepositories.GetAll();
|
||||
Devices=new ObservableCollection<Device>(ds);
|
||||
|
||||
Devices = new ObservableCollection<Device>(ds);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
public async void AddDevice()
|
||||
public async void AddDevice()
|
||||
{
|
||||
Device device = null;
|
||||
try
|
||||
{
|
||||
device= await _deviceDialogService.ShowAddDeviceDialog();
|
||||
device = await _deviceDialogService.ShowAddDeviceDialog();
|
||||
if (device != null)
|
||||
{
|
||||
var isOk = await _devicesRepositories.Add(device);
|
||||
@@ -78,9 +68,14 @@ public partial class DevicesViewModel : ViewModelBase
|
||||
}
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
public void NavigateVt()
|
||||
{
|
||||
}
|
||||
|
||||
|
||||
public override async void OnLoaded()
|
||||
{
|
||||
// OnLoadedAsync().Await((e) => { _deviceDialogService.ShowMessageDialog("", e.Message); }, () => { });
|
||||
await OnLoadedAsync();
|
||||
}
|
||||
}
|
||||
@@ -1,30 +1,28 @@
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Input;
|
||||
using PMSWPF.Enums;
|
||||
using PMSWPF.Extensions;
|
||||
using PMSWPF.Models;
|
||||
|
||||
namespace PMSWPF.ViewModels.Dialogs;
|
||||
|
||||
public partial class DeviceDialogViewModel:ObservableObject
|
||||
public partial class DeviceDialogViewModel : ObservableObject
|
||||
{
|
||||
private readonly Device _saveDevice;
|
||||
|
||||
[ObservableProperty]
|
||||
private string title="添加设备";
|
||||
[ObservableProperty]
|
||||
private Device device;
|
||||
[ObservableProperty] private Device device;
|
||||
|
||||
[ObservableProperty] private string title = "添加设备";
|
||||
|
||||
public DeviceDialogViewModel(Device saveDevice)
|
||||
{
|
||||
_saveDevice = saveDevice;
|
||||
this.device = new Device();
|
||||
device = new Device();
|
||||
}
|
||||
|
||||
|
||||
[RelayCommand]
|
||||
public void AddDevice()
|
||||
{
|
||||
this.device.CopyTo<Device>(_saveDevice);
|
||||
device.CopyTo<Device>(_saveDevice);
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,8 @@
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public class HomeViewModel:ViewModelBase
|
||||
public class HomeViewModel : ViewModelBase
|
||||
{
|
||||
public override void OnLoaded()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
@@ -1,42 +1,23 @@
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Messaging;
|
||||
using PMSWPF.Data.Entities;
|
||||
using PMSWPF.Message;
|
||||
using System.Collections.ObjectModel;
|
||||
using PMSWPF.Services;
|
||||
|
||||
namespace PMSWPF.ViewModels
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public partial class MainViewModel : ViewModelBase
|
||||
{
|
||||
public partial class MainViewModel : ObservableRecipient, IRecipient<MyMessage>
|
||||
private readonly NavgatorServices _navgatorServices;
|
||||
|
||||
[ObservableProperty] private ViewModelBase currentViewModel;
|
||||
|
||||
public MainViewModel(NavgatorServices navgatorServices)
|
||||
{
|
||||
private readonly NavgatorServices _navgatorServices;
|
||||
|
||||
[ObservableProperty]
|
||||
private ViewModelBase currentViewModel;
|
||||
public MainViewModel(NavgatorServices navgatorServices)
|
||||
{
|
||||
_navgatorServices = navgatorServices;
|
||||
_navgatorServices.OnViewModelChanged += () =>
|
||||
{
|
||||
CurrentViewModel = _navgatorServices.CurrentViewModel;
|
||||
};
|
||||
IsActive = true;
|
||||
CurrentViewModel = new HomeViewModel();
|
||||
}
|
||||
|
||||
public void NavgateTo<T>() where T : ViewModelBase
|
||||
{
|
||||
_navgatorServices.NavigateTo<T>();
|
||||
}
|
||||
|
||||
string text = "Hello Count:";
|
||||
|
||||
[ObservableProperty]
|
||||
string message;
|
||||
|
||||
public void Receive(MyMessage message)
|
||||
{
|
||||
Message = text + message.Count;
|
||||
}
|
||||
_navgatorServices = navgatorServices;
|
||||
_navgatorServices.OnViewModelChanged += () => { CurrentViewModel = _navgatorServices.CurrentViewModel; };
|
||||
CurrentViewModel = new HomeViewModel();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public override void OnLoaded()
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -1,9 +1,8 @@
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public class SettingViewModel:ViewModelBase
|
||||
public class SettingViewModel : ViewModelBase
|
||||
{
|
||||
public override void OnLoaded()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
8
ViewModels/VariableTableViewModel.cs
Normal file
8
ViewModels/VariableTableViewModel.cs
Normal file
@@ -0,0 +1,8 @@
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public class VariableTableViewModel : ViewModelBase
|
||||
{
|
||||
public override void OnLoaded()
|
||||
{
|
||||
}
|
||||
}
|
||||
@@ -2,12 +2,7 @@
|
||||
|
||||
namespace PMSWPF.ViewModels;
|
||||
|
||||
public abstract partial class ViewModelBase:ObservableObject
|
||||
public abstract class ViewModelBase : ObservableObject
|
||||
{
|
||||
public ViewModelBase()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public abstract void OnLoaded();
|
||||
}
|
||||
Reference in New Issue
Block a user