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); } }
private void InitRemoveSerialPortCommand() { RemoveSerialPortCommand = new RelayCommand(() => { var dialog = new RemoveItemsView("删除通信串口", ProjectorSerialPortInfos.Select(s => s.PortName).ToList()); if (dialog.ShowDialog() == true) { var removePortNames = dialog.SelectedItems; foreach (var portName in removePortNames) { var serialPortInfo = ProjectorSerialPortInfos.FirstOrDefault(s => s.PortName == portName); if (serialPortInfo != null) { serialPortInfo.Cleanup(); ProjectorSerialPortInfos.Remove(serialPortInfo); } } ProjectorDeviceService.SaveSettings(); } }); }