private void toolStripButton1_Click(object sender, EventArgs e) // ЗАПУСК ОПРОСА { if (LabelPort.Text != "null") // Проверяем что порт установлен { if (CounterPage.TabCount != 1) { WorkOn = true; // Меняем флаг работы опроса SaveLatestPort.Save(LabelPort.Text); // Сохраняем порт в файл WriteGoodWork(); toolStripButton1.Enabled = false; toolStripButton2.Enabled = true; LabelPort.Enabled = false; NewCounter[] ChildF = new NewCounter[CounterPage.TabCount - 1]; for (int i = 1; i < CounterPage.TabCount; i++) { ChildF[i - 1] = (NewCounter)CounterPage.TabPages[i].Controls[0]; } _Work = new InterrogationСounter(LabelPort.Text); tasks.Add(Task.Factory.StartNew(() => _Work.Request(ChildF, (AmountCounter)CounterPage.TabPages[0].Controls[0]))); } else { MessageBox.Show("Нет счетчиков в очереди на опрос", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } } else { PortProperties(); MessageBox.Show("Проверьте подключение кабеля и соответствие наименования выбранного порта, повторите попытку запуска", "Ошибка", MessageBoxButtons.OK, MessageBoxIcon.Error); } }
public void PortProperties() // Установка надписи о текущем порте { try { if (SaveLatestPort.Check()) // Пробуем взять из файла { LabelPort.Text = SaveLatestPort.Read(); } else { LabelPort.Text = SerialPort.GetPortNames()[0]; } // Если нет устанавливаем существующие } catch { LabelPort.Text = "null"; // Иначе 0 } }