//Delegados para agregar nuevos monitores a la lista public void AddServiceMonitorData(ServiceMonitor monitor, object sender) { if (sender != null) { ((Form)sender).Invoke((MethodInvoker)delegate { addServiceMonitorData(monitor); }); return; } }
private void addServiceMonitorData(ServiceMonitor monitor) { DataRow targetRow = serviceDataTable.NewRow(); targetRow[0] = monitor.name; targetRow[1] = monitor.remoteMachine; targetRow[2] = monitor.target; targetRow[6] = monitor.critic.ToString(); targetRow[7] = monitor.enable.ToString(); if (_updateAndCheck) { targetRow[3] = monitor.actualStatus.ToString(); targetRow[4] = monitor.actualState.ToString(); targetRow[5] = monitor.actualStartMode.ToString(); } serviceDataTable.Rows.Add(targetRow); }
private ServiceMonitor createNewServiceMonitor() { string targetName = ((List<TaskMonitor.Sources.ServiceTools.Service>)this.listBox_results.DataSource)[this.listBox_results.SelectedIndex].Name; ServiceState? selectedState = null; ServiceStatus? selectedStatus = null; ServiceStartMode? selectedStartMode = null; bool selectedCritic; switch(this.comboBox_serv_state.SelectedIndex) { case 0: selectedState = ServiceState.Running; break; case 1: selectedState = ServiceState.Paused; break; case 2: selectedState = ServiceState.Stopped; break; case 3: selectedState = ServiceState.NotFound; break; case 4: selectedState = null; break; } switch(this.comboBox_serv_status.SelectedIndex) { case 0: selectedStatus = ServiceStatus.OK; break; case 1: selectedStatus = ServiceStatus.Error; break; case 2: selectedStatus = null; break; } switch(this.comboBox_serv_startMode.SelectedIndex) { case 0: selectedStartMode = ServiceStartMode.Auto; break; case 1: selectedStartMode = ServiceStartMode.Manual; break; case 2: selectedStartMode = ServiceStartMode.Disabled; break; case 3: selectedStartMode = null; break; } selectedCritic = (this.comboBox_serv_critic.SelectedText == "Si"); if(selectedState == null && selectedStatus == null && selectedStartMode == null) return null; ServiceMonitor monitor = new ServiceMonitor(this.textBox_monitorName.Text, targetName ,this.textBox_machineName.Text, this.textBox_username.Text, this.textBox_password.Text, this.textBox_domain.Text, selectedState, selectedStatus, selectedStartMode, selectedCritic); return monitor; }