protected override void LoadSettings(ITimeSyncSettingsGroup settings) { _port = new SerialPort { PortName = settings.GetValue("PortName", s => { if (string.IsNullOrWhiteSpace(s)) { s = SerialPortSelector.Select(Name); } if (!SerialPort.GetPortNames().Contains(s)) { throw new Exception($"Serial port '{s}' not available on this system!"); } return(s); }, null), BaudRate = settings.GetValue("BaudRate", int.Parse, 9600), Parity = settings.GetValue("Parity", Enum.Parse <Parity>, Parity.None), DataBits = settings.GetValue("DataBits", int.Parse, 8), StopBits = settings.GetValue("StopBits", Enum.Parse <StopBits>, StopBits.One), Handshake = settings.GetValue("Handshake", Enum.Parse <Handshake>, Handshake.None) }; }
private void bOpenSerial_Click(object sender, EventArgs e) { SerialPortSelector sps = new SerialPortSelector(); sps.ShowDialog(); { if (sps.SelectedPort != null) { _serialPort = new SerialPort(sps.SelectedPort, 115200, Parity.None, 8, StopBits.One); _serialPort.Open(); bSend0.Enabled = true; bSend1.Enabled = true; } } }