private void LoadDgvIssues() { int currentCellRow = 0; int currentCellCol = 0; if (dgvIssues.CurrentCell != null) { currentCellRow = dgvIssues.CurrentCell.RowIndex; currentCellCol = dgvIssues.CurrentCell.ColumnIndex; } DataTable dataTable = new DataTable(); /// Set the datatable based on the SelectedIndex of <see cref="cboIssueViews"/>. switch (cboIssueViews.SelectedIndex) { case 0: dataTable = ServiceIssue.GetActive(); break; case 1: dataTable = ServiceIssue.GetInactive(); break; default: return; } if (dataTable.Rows.Count > 0) { var dt = dataTable.AsEnumerable().Where(x => x.Field <Guid?>("PlanRecordKeeperProductId") == CurrentPlanRecordKeeperProduct.Id); if (dt.Any()) { dataTable = dt.CopyToDataTable(); } else { dataTable.Rows.Clear(); } } // Add plan name column and fill data dataTable.Columns.Add("Plan"); foreach (DataRow dr in dataTable.Rows) { string planIdString = dr["PlanId"].ToString(); if (String.IsNullOrWhiteSpace(planIdString) == false) { Guid planId = new Guid(planIdString); Plan plan = new Plan(planId); dr["Plan"] = plan.Name; } } dgvIssues.DataSource = dataTable; // Display/order the columns. dgvIssues.Columns["ServiceIssueId"].Visible = false; dgvIssues.Columns["PlanId"].Visible = false; dgvIssues.Columns["RecordKeeperId"].Visible = false; dgvIssues.Columns["AuditorId"].Visible = false; dgvIssues.Columns["DescriptionValue"].Visible = false; dgvIssues.Columns["CreatedBy"].Visible = false; dgvIssues.Columns["ModifiedBy"].Visible = false; dgvIssues.Columns["StateCode"].Visible = false; dgvIssues.Columns["SubjectValue"].DisplayIndex = 0; dgvIssues.Columns["Plan"].DisplayIndex = 1; dgvIssues.Columns["AsOfDate"].DisplayIndex = 2; dgvIssues.Columns["ModifiedOn"].DisplayIndex = 3; if (dgvIssues.RowCount > 0 && dgvIssues.ColumnCount > 0) { DataGridViewCell selectedCell = dgvIssues.Rows[currentCellRow].Cells[currentCellCol]; if (selectedCell != null && selectedCell.Visible) { dgvIssues.CurrentCell = selectedCell; } else { dgvIssues.CurrentCell = dgvIssues.FirstDisplayedCell; } } }
private void LoadDgvIssues() { DataTable dataTable = new DataTable(); /// Set the datatable based on the SelectedIndex of <see cref="cboIssueViews"/>. switch (cboIssueViews.SelectedIndex) { case 0: dataTable = ServiceIssue.GetActive(); break; case 1: dataTable = ServiceIssue.GetInactive(); break; default: return; } if (dataTable.Rows.Count > 0) { var dt = dataTable.AsEnumerable().Where(x => x.Field <Guid?>("PlanId") == CurrentPlan.PlanId); if (dt.Any()) { dataTable = dt.CopyToDataTable(); } else { dataTable.Rows.Clear(); } } // Add plan name column and fill data dataTable.Columns.Add("RecordKeeper"); foreach (DataRow dr in dataTable.Rows) { string recordKeeperIdString = dr["RecordKeeperId"].ToString(); if (String.IsNullOrWhiteSpace(recordKeeperIdString) == false) { Guid recordKeeperId = new Guid(recordKeeperIdString); DataIntegrationHub.Business.Entities.RecordKeeper recordKeeper = new DataIntegrationHub.Business.Entities.RecordKeeper(recordKeeperId); dr["RecordKeeper"] = recordKeeper.Name; } } dgvIssues.DataSource = dataTable; // Display/order the columns. dgvIssues.Columns["ServiceIssueId"].Visible = false; dgvIssues.Columns["PlanId"].Visible = false; dgvIssues.Columns["RecordKeeperId"].Visible = false; dgvIssues.Columns["AuditorId"].Visible = false; dgvIssues.Columns["DescriptionValue"].Visible = false; dgvIssues.Columns["CreatedBy"].Visible = false; dgvIssues.Columns["ModifiedBy"].Visible = false; dgvIssues.Columns["StateCode"].Visible = false; dgvIssues.Columns["SubjectValue"].DisplayIndex = 0; dgvIssues.Columns["RecordKeeper"].DisplayIndex = 1; dgvIssues.Columns["AsOfDate"].DisplayIndex = 2; dgvIssues.Columns["ModifiedOn"].DisplayIndex = 3; }