private void InitAddSerialPortCommand() { AddSerialPortCommand = new RelayCommand(() => { var serialPortSettingsInfo = new SerialPortSettingsInfo(); var plcSettingsInfo = new PLCSettingsInfo(); var navFrameInfos = new List <NavFrameInfo> { new NavFrameInfo(serialPortSettingsInfo), new NavFrameInfo(plcSettingsInfo) }; var nav = new NavFrameWindow(navFrameInfos, "添加串口信息"); if (nav.ShowDialog() == true) { var plcSerialPortInfo = PLCSerialPortInfos.FirstOrDefault(s => s.PortName == serialPortSettingsInfo.Current.Item1.PortName); var existsPortName = plcSerialPortInfo != null; if (!existsPortName) { AddNewSerialPortInfoWithSave(serialPortSettingsInfo, plcSettingsInfo); } else { plcSerialPortInfo.AddPLCDeviceInfoWithSave(plcSettingsInfo.Current); } } }); }
private void AddNewSerialPortInfoWithSave(SerialPortSettingsInfo serialPortSettingsInfo, PLCSettingsInfo plcSettingsInfo) { var plcSerialPortInfo = new PLCSerialPortInfo(serialPortSettingsInfo.Current.Item1); PLCSerialPortInfos.Add(plcSerialPortInfo); var deviceSettings = PLCDeviceSettings.GetPLCDeviceSettings(); deviceSettings.SerialPortSettings.Add(new PLCSerialPortSettings(serialPortSettingsInfo.Current.Item1)); if (PLCDeviceService.SaveSettings()) { plcSerialPortInfo.AddPLCDeviceInfoWithSave(plcSettingsInfo.Current); } }
private void AddNewSerialPortInfoWithSave(SerialPortSettingsInfo serialPortSettingsInfo, ProjectorSettingsInfo projectorSettingsInfo) { var projectorSerialPortInfo = new ProjectorSerialPortInfo(serialPortSettingsInfo.Current.Item1); ProjectorSerialPortInfos.Add(projectorSerialPortInfo); var deviceSettings = ProjectorDeviceSettings.GetProjectorDeviceSettings(); deviceSettings.SerialPortSettings.Add(new ProjectorSerialPortSettings(serialPortSettingsInfo.Current.Item1)); if (ProjectorDeviceService.SaveSettings()) { projectorSerialPortInfo.AddProjectorDeviceInfoWithSave(projectorSettingsInfo.Current); } }