/// <summary> /// Функция, выполняющая вывод информации о работе программы в специальное окно /// </summary> /// <param name="info">Строка с информацией, которую необходимо вывести</param> void ToLogTB(string Info) { // Проверка, из какого потока вызывается функция if (InvokeRequired) { // Если не из главного Invoke(new Action(() => LogTB.Text += DateTime.Now + ": " + Info)); // Во избежание переполнения окна вывода информации о работе программы if (LogTB.Text.Length >= 0.95 * LogTB.MaxLength) { // Сохранение логов и очистка специального окна SaveLogs(); Invoke(new Action(() => LogTB.Clear())); } } else { // Если из главного LogTB.Text += DateTime.Now + ": " + Info; // Во избежание переполнения окна вывода информации о работе программы if (LogTB.Text.Length >= 0.95 * LogTB.MaxLength) { // Сохранение логов и очистка специального окна SaveLogs(); LogTB.Clear(); } } }
/// <summary> /// Updates the application after connecting to or disconnecting from the server. /// </summary> private void Server_ConnectComplete(object sender, EventArgs e) { try { m_session = ConnectServerCTRL.Session; if (m_session == null) { if (m_tester != null) { StopTest(); } return; } // set a suitable initial state. if (m_session != null && !m_connectedOnce) { m_connectedOnce = true; } LogTB.Clear(); m_tester = new Tester(); m_tester.SamplingRate = (int)UpdateRateCTRL.Value; m_tester.ItemCount = (int)ItemCountCTRL.Value; m_tester.Start(m_session); UpdateTimer.Enabled = true; StopBTN.Visible = true; } catch (Exception exception) { ClientUtils.HandleException(this.Text, exception); } }
/// <summary> /// Действия, выполняемые при нажатии на кнопку "Очистить" на вкладке "Логи системы" /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void LogB_Click(object sender, EventArgs e) { // Сохранение логов и очистка специального окна SaveLogs(); Invoke(new Action(() => LogTB.Clear())); }