完成从Excel导入变量的对话框
This commit is contained in:
@@ -1,4 +1,6 @@
|
||||
using System.Collections;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using AutoMapper;
|
||||
using CommunityToolkit.Mvvm.ComponentModel;
|
||||
using CommunityToolkit.Mvvm.Input;
|
||||
@@ -11,7 +13,6 @@ namespace DMS.WPF.ViewModels.Dialogs;
|
||||
|
||||
public partial class ImportExcelDialogViewModel : DialogViewModelBase<List<Variable>>
|
||||
{
|
||||
private readonly IMapper _mapper;
|
||||
private readonly IExcelService _excelService;
|
||||
|
||||
[ObservableProperty]
|
||||
@@ -19,12 +20,12 @@ public partial class ImportExcelDialogViewModel : DialogViewModelBase<List<Varia
|
||||
|
||||
[ObservableProperty]
|
||||
private List<Variable> _variables = new();
|
||||
|
||||
|
||||
[ObservableProperty]
|
||||
private IList _selectedVariables = new ArrayList();
|
||||
|
||||
public ImportExcelDialogViewModel(IMapper mapper,IExcelService excelService)
|
||||
public ImportExcelDialogViewModel(IExcelService excelService)
|
||||
{
|
||||
_mapper = mapper;
|
||||
_excelService = excelService;
|
||||
}
|
||||
|
||||
@@ -44,20 +45,23 @@ public partial class ImportExcelDialogViewModel : DialogViewModelBase<List<Varia
|
||||
NotificationHelper.ShowError($"从Excel文件中读取变量时发生了错误:{ex.Message}",ex);
|
||||
}
|
||||
}
|
||||
[RelayCommand]
|
||||
public void SecondaryButton()
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void PrimaryButton()
|
||||
private void ImportAll()
|
||||
{
|
||||
Close(Variables);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void ImportSelected()
|
||||
{
|
||||
var selected = SelectedVariables.Cast<Variable>().ToList();
|
||||
Close(selected);
|
||||
}
|
||||
|
||||
[RelayCommand]
|
||||
private void CancleButton()
|
||||
{
|
||||
Close(null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -10,6 +10,7 @@ using DMS.WPF.ViewModels.Items;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.ComponentModel;
|
||||
using System.Windows.Data;
|
||||
using Microsoft.Extensions.DependencyInjection;
|
||||
|
||||
namespace DMS.WPF.ViewModels;
|
||||
|
||||
@@ -17,7 +18,6 @@ namespace DMS.WPF.ViewModels;
|
||||
partial class VariableTableViewModel : ViewModelBase, INavigatable
|
||||
{
|
||||
private readonly IMapper _mapper;
|
||||
private readonly IExcelService _excelService;
|
||||
|
||||
/// <summary>
|
||||
/// 对话服务接口,用于显示各种对话框(如确认、编辑、导入等)。
|
||||
@@ -91,10 +91,9 @@ partial class VariableTableViewModel : ViewModelBase, INavigatable
|
||||
/// <param name="dialogService">对话服务接口的实例。</param>
|
||||
private readonly DataServices _dataServices;
|
||||
|
||||
public VariableTableViewModel(IMapper mapper, IExcelService excelService, IDialogService dialogService, DataServices dataServices)
|
||||
public VariableTableViewModel(IMapper mapper, IDialogService dialogService, DataServices dataServices)
|
||||
{
|
||||
_mapper = mapper;
|
||||
_excelService = excelService;
|
||||
_dialogService = dialogService;
|
||||
_dataServices = dataServices;
|
||||
IsLoadCompletion = false; // 初始设置为 false,表示未完成加载
|
||||
@@ -295,10 +294,10 @@ partial class VariableTableViewModel : ViewModelBase, INavigatable
|
||||
[RelayCommand]
|
||||
private async void ImprotFromTiaVarTable()
|
||||
{
|
||||
ImportExcelDialogViewModel viewModel = new ImportExcelDialogViewModel(_mapper, _excelService);
|
||||
|
||||
ImportExcelDialogViewModel viewModel = App.Current.Services.GetRequiredService<ImportExcelDialogViewModel>();
|
||||
List<Variable> improtVariable = await _dialogService.ShowDialogAsync(viewModel);
|
||||
if (improtVariable == null) return;
|
||||
|
||||
if (improtVariable == null || improtVariable.Count==0) return;
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user