UI界面
This commit is contained in:
@@ -1,25 +1,112 @@
|
||||
using Model.Entity;
|
||||
using Prism.Commands;
|
||||
using Prism.Ioc;
|
||||
using Service.Interface;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Windows.Input;
|
||||
using UIShare.ViewModelBase;
|
||||
|
||||
namespace MainModule.ViewModels
|
||||
{
|
||||
public class MainViewModel : NavigateViewModelBase
|
||||
{
|
||||
|
||||
#region 私有字段
|
||||
public ObservableCollection<ChamberMonitorItem> Chambers { get; } = new();
|
||||
private IContainerProvider _containerProvider;
|
||||
|
||||
#endregion
|
||||
public MainViewModel(IContainerProvider containerProvider ) : base(containerProvider)
|
||||
public MainViewModel(IContainerProvider containerProvider) : base(containerProvider)
|
||||
{
|
||||
_containerProvider=containerProvider;
|
||||
_containerProvider = containerProvider;
|
||||
|
||||
// 触发配置与绑定初始化
|
||||
ConfigureAndBindChambers();
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// 核心配置与数据绑定逻辑
|
||||
/// </summary>
|
||||
private void ConfigureAndBindChambers()
|
||||
{
|
||||
// 实例 1:Modbus TCP 环境箱配置
|
||||
Chambers.Add(new ChamberMonitorItem
|
||||
{
|
||||
Id = 1,
|
||||
Name = "环境箱 01",
|
||||
ProtocolType = "Modbus TCP",
|
||||
IsConnected = false,
|
||||
Temperature = 0.0,
|
||||
Humidity = 0.0
|
||||
});
|
||||
|
||||
// 实例 2:Modbus TCP B+ 环境箱配置
|
||||
Chambers.Add(new ChamberMonitorItem
|
||||
{
|
||||
Id = 2,
|
||||
Name = "环境箱 02",
|
||||
ProtocolType = "Modbus TCP B+",
|
||||
IsConnected = false,
|
||||
Temperature = 0.0,
|
||||
Humidity = 0.0
|
||||
});
|
||||
|
||||
// 实例 3:西门子 S7 环境箱配置
|
||||
Chambers.Add(new ChamberMonitorItem
|
||||
{
|
||||
Id = 3,
|
||||
Name = "环境箱 03",
|
||||
ProtocolType = "S7",
|
||||
IsConnected = false,
|
||||
Temperature = 0.0,
|
||||
Humidity = 0.0
|
||||
});
|
||||
|
||||
// 实例 4:HTTP 环境箱配置
|
||||
Chambers.Add(new ChamberMonitorItem
|
||||
{
|
||||
Id = 4,
|
||||
Name = "环境箱 04",
|
||||
ProtocolType = "HTTP",
|
||||
IsConnected = false,
|
||||
Temperature = 0.0,
|
||||
Humidity = 0.0
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 环境箱 UI 状态及温湿度数据绑定模型
|
||||
/// </summary>
|
||||
public class ChamberMonitorItem :BindableBase
|
||||
{
|
||||
private double _temperature;
|
||||
private double _humidity;
|
||||
private bool _isConnected;
|
||||
|
||||
public int Id { get; set; }
|
||||
public string Name { get; set; } = string.Empty;
|
||||
public string ProtocolType { get; set; } = string.Empty;
|
||||
|
||||
/// <summary>
|
||||
/// 温度(支持通知刷新)
|
||||
/// </summary>
|
||||
public double Temperature
|
||||
{
|
||||
get => _temperature;
|
||||
set => SetProperty(ref _temperature, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 湿度(支持通知刷新)
|
||||
/// </summary>
|
||||
public double Humidity
|
||||
{
|
||||
get => _humidity;
|
||||
set => SetProperty(ref _humidity, value);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 连接状态:True-已连接(绿灯),False-断开(红灯)
|
||||
/// </summary>
|
||||
public bool IsConnected
|
||||
{
|
||||
get => _isConnected;
|
||||
set => SetProperty(ref _isConnected, value);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user