完成页面导航功能
This commit is contained in:
@@ -17,7 +17,7 @@ namespace DMS.WPF.ViewModels;
|
||||
/// <summary>
|
||||
/// 设备管理视图模型,负责设备的增删改查操作。
|
||||
/// </summary>
|
||||
public partial class DevicesViewModel : ViewModelBase
|
||||
public partial class DevicesViewModel : ViewModelBase,INavigatable
|
||||
{
|
||||
private readonly DataServices _dataServices;
|
||||
private readonly IDialogService _dialogService;
|
||||
@@ -197,4 +197,9 @@ public partial class DevicesViewModel : ViewModelBase
|
||||
deviceDetailVm.CurrentDevice = SelectedDevice;
|
||||
MessageHelper.SendNavgatorMessage(deviceDetailVm);
|
||||
}
|
||||
|
||||
public async Task OnNavigatedToAsync(object parameter)
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
@@ -11,6 +11,7 @@ using DMS.Helper;
|
||||
using DMS.Services;
|
||||
using DMS.ViewModels;
|
||||
using DMS.WPF.Helper;
|
||||
using DMS.WPF.ViewModels.Items;
|
||||
using iNKORE.UI.WPF.Modern.Common.IconKeys;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
using Microsoft.Extensions.Logging;
|
||||
@@ -27,13 +28,14 @@ public partial class MainViewModel : ViewModelBase
|
||||
{
|
||||
public DataServices DataServices { get; }
|
||||
private readonly IDialogService _dialogService;
|
||||
private readonly INavigationService _navigationService;
|
||||
private readonly ILogger<MainViewModel> _logger;
|
||||
|
||||
/// <summary>
|
||||
/// 当前显示的视图模型。
|
||||
/// </summary>
|
||||
[ObservableProperty]
|
||||
private ViewModelBase currentViewModel;
|
||||
private ViewModelBase _currentViewModel;
|
||||
|
||||
/// <summary>
|
||||
/// 应用程序的菜单列表。
|
||||
@@ -48,10 +50,11 @@ public partial class MainViewModel : ViewModelBase
|
||||
/// <param name="dataServices">数据服务。</param>
|
||||
/// <param name="dialogService">对话框服务。</param>
|
||||
/// <param name="logger">日志记录器。</param>
|
||||
public MainViewModel(DataServices dataServices,
|
||||
public MainViewModel(DataServices dataServices,INavigationService navigationService,
|
||||
ILogger<MainViewModel> logger)
|
||||
{
|
||||
DataServices = dataServices;
|
||||
_navigationService = navigationService;
|
||||
_logger = logger;
|
||||
|
||||
CurrentViewModel = new HomeViewModel();
|
||||
@@ -161,8 +164,9 @@ public partial class MainViewModel : ViewModelBase
|
||||
/// 处理菜单选择变化的逻辑。
|
||||
/// </summary>
|
||||
/// <param name="menu">被选中的菜单项。</param>
|
||||
public async Task MenuSelectionChanged(MenuBean menu)
|
||||
public async Task MenuSelectionChanged(MenuBeanItemViewModel menu)
|
||||
{
|
||||
_navigationService.NavigateToAsync(menu.TargetViewKey);
|
||||
// try
|
||||
// {
|
||||
// switch (menu.Type)
|
||||
|
||||
@@ -50,13 +50,12 @@ public partial class MqttsViewModel : ViewModelBase
|
||||
private MqttServerItemViewModel _selectedMqtt;
|
||||
|
||||
public MqttsViewModel(
|
||||
ILogger<MqttsViewModel> logger, IDialogService dialogService, DataServices dataServices, NavgatorServices navgatorServices
|
||||
ILogger<MqttsViewModel> logger, IDialogService dialogService, DataServices dataServices
|
||||
)
|
||||
{
|
||||
_logger = logger;
|
||||
_dialogService = dialogService;
|
||||
_dataServices = dataServices;
|
||||
_navgatorServices = navgatorServices;
|
||||
|
||||
// if (dataServices.Mqtts == null || dataServices.Mqtts.Count == 0)
|
||||
// {
|
||||
|
||||
Reference in New Issue
Block a user