private void buildSerialPortSettings() { void InitRegAndOptions <T>(ref ComboBox cmbx, List <T> options, string regKey) { string targetValue = RDM.ReadFromReg <string>(RDM.DefaultKey, regKey); foreach (T item in options) { cmbx.Items.Add(item); } cmbx.Text = targetValue; } #region Ports InitRegAndOptions(ref cbPort, csSerialPort.GetPortNames().ToList(), RDM.COMPort); #endregion #region Baud Rate InitRegAndOptions(ref cbBaudRate, csSerialPort.GetBaudRates().ToList(), RDM.BaudRate); #endregion #region Parity InitRegAndOptions(ref cbParity, csSerialPort.GetParityList(), RDM.Parity); #endregion #region Data Bits InitRegAndOptions(ref cbDataBits, csSerialPort.GetDataBits().ToList(), RDM.DataBits); #endregion #region Stop Bits InitRegAndOptions(ref cbStopBits, csSerialPort.GetStopBits(), RDM.StopBits); #endregion serialPortButtonControl(); }
/// <summary> Default ctor </summary> public frmSettings() { InitializeComponent(); if (!RDM.ReadFromReg <bool>(RDM.DefaultKey, RDM.IsInited)) { RDM.InitReg(); } }
private void handleInitSerialPort() { if (SerialPort.GetPortNames().Any(x => x == RDM.ReadFromReg <string>(RDM.DefaultKey, RDM.COMPort))) { try { sp = new SerialPort() { PortName = RDM.ReadFromReg <string>(RDM.DefaultKey, RDM.COMPort), BaudRate = RDM.ReadFromReg <int>(RDM.DefaultKey, RDM.BaudRate), Parity = (Parity)Enum.Parse(typeof(Parity), RDM.ReadFromReg <string>(RDM.DefaultKey, RDM.Parity)), DataBits = RDM.ReadFromReg <int>(RDM.DefaultKey, RDM.DataBits), StopBits = (StopBits)Enum.Parse(typeof(StopBits), RDM.ReadFromReg <string>(RDM.DefaultKey, RDM.StopBits)) }; sp.DataReceived += new SerialDataReceivedEventHandler(spDataReceived); if (sp != null) { sp.Open(); } } catch { } } serialPortStatusUpdate(); }