Esempio n. 1
0
 private void StartStopButtonPressed(object sender, RoutedEventArgs e)
 {
     if (_serialPortCommunicator.IsOpen)
     {
         _serialPortCommunicator.Close();
     }
     else
     {
         try
         {
             _serialPortCommunicator.Open(CurrentPortComboBox.SelectedItem.ToString(),
                                          (EBaudrate)((EnumViewObject)BaudrateComboBox.SelectedItem).Value,
                                          (Parity)((EnumViewObject)ParityComboBox.SelectedItem).Value,
                                          (EDataBits)((EnumViewObject)DataBitsComboBox.SelectedItem).Value,
                                          (StopBits)((EnumViewObject)StopBitsComboBox.SelectedItem).Value,
                                          delegate
             {
                 Dispatcher.Invoke(LoadReceivedData);
             });
         }
         catch (Exception exception)
         {
             InternalLogger.Log.Error("Cannot open port:", exception);
             ShowErrorBox(@"Cannot open selected port with selected configuration");
         }
     }
 }
Esempio n. 2
0
        private void DynamicConfigComponents()
        {
            RefreshViewAsRequred();

            foreach (var name in Enum.GetValues(typeof(EBaudrate)))
            {
                baudrateComboBox.Items.Add((int)name);
            }
            baudrateComboBox.SelectedIndex = 1;

            foreach (var name in Enum.GetValues(typeof(EDataBits)))
            {
                dataBitsComboBox.Items.Add((int)name);
            }
            dataBitsComboBox.SelectedIndex = 3;

            foreach (var name in Enum.GetValues(typeof(StopBits)))
            {
                if (!name.Equals(StopBits.None))
                {
                    stopBitsComboBox.Items.Add(name);
                }
            }
            stopBitsComboBox.SelectedIndex = 0;

            foreach (var name in Enum.GetValues(typeof(Parity)))
            {
                parityComboBox.Items.Add(name);
            }
            parityComboBox.SelectedIndex = 0;

            foreach (var name in Enum.GetValues(typeof(Parity)))
            {
                flowControlComboBox.Items.Add(name);
            }
            flowControlComboBox.SelectedIndex = 0;

            myIdNumeric.Text      = _serialPortCommunicator.MyId.ToString();
            partnerIdNumeric.Text = _serialPortCommunicator.PartnerId.ToString();

            FormClosed += (sender, e) =>
            {
                if (_serialPortCommunicator.IsOpen)
                {
                    _serialPortCommunicator.Close();
                }
            };
            currentPortComboBox.DropDown  += (sender, args) => { RefreshPortList(); };
            myIdNumeric.ValueChanged      += (sender, args) => { UpdateMyIdValue(); };
            partnerIdNumeric.ValueChanged += (sender, args) => { UpdatePartnerIdValue(); };
        }