internal static void UpdateScanQueueStatus(int ScanID, string Status) { if (UI.CanShutdown) return; if (UI.ASQueueGrid.InvokeRequired) { UpdateScanQueueStatus_d USQS_d = new UpdateScanQueueStatus_d(UpdateScanQueueStatus); UI.Invoke(USQS_d, new object[] { ScanID, Status }); } else { if (UI.ASQueueGrid.Rows.Count >= ScanID) { try { if ((int)UI.ASQueueGrid.Rows[ScanID - 1].Cells[0].Value == ScanID) { SetScanRowStatus(UI.ASQueueGrid.Rows[ScanID -1], Status); return; } } catch { } } foreach (DataGridViewRow Row in UI.ASQueueGrid.Rows) { int RowScanID = 0; try { RowScanID = (int)Row.Cells[0].Value; } catch { continue; } if (RowScanID == ScanID) { SetScanRowStatus(Row, Status); return; } } } }
internal static void UpdateScanQueueStatus(int ScanID, string Status) { if (UI.ASQueueGrid.InvokeRequired) { UpdateScanQueueStatus_d USQS_d = new UpdateScanQueueStatus_d(UpdateScanQueueStatus); UI.Invoke(USQS_d, new object[] { ScanID, Status }); } else { foreach (DataGridViewRow Row in UI.ASQueueGrid.Rows) { int RowScanID = 0; try { RowScanID = (int)Row.Cells[0].Value; } catch { continue; } if (RowScanID == ScanID) { Row.Cells[1].Value = Status; switch (Status) { case "Running": Row.DefaultCellStyle.BackColor = Color.Green; break; case "Aborted": Row.DefaultCellStyle.BackColor = Color.Red; break; case "Completed": Row.DefaultCellStyle.BackColor = Color.Gray; break; case "Incomplete": case "Stopped": Row.DefaultCellStyle.BackColor = Color.IndianRed; break; default: Row.DefaultCellStyle.BackColor = Color.White; break; } return; } } } }