void UpdateTabPages(ClaimView item) { if (item == null) return; var handlers = new Dictionary<string, Action>() { {"AssignVehicleCommand", () => tabControl1.TabPages.Add(AssignVehicleCommand)}, {"ApprovePayoutCommand", () => tabControl1.TabPages.Add(ApprovePayoutCommand)}, {"CloseClaimCommand", () => tabControl1.TabPages.Add(CloseClaimCommand)}, {"RejectPayoutCommand", () => tabControl1.TabPages.Add(RejectPayoutCommand)}, {"ReopenClaimCommand", () => tabControl1.TabPages.Add(ReopenClaimCommand)}, }; if (item != null) { tabControl1.TabPages.Clear(); foreach (var tab in item.Routes) { handlers[tab].Invoke(); } } tabControl1.Refresh(); }
void Refresh(ClaimView view) { var reloaded = _claimReader.GetById(view.Id); _claims[bindingSource1.Position] = reloaded; dataGridView1.Refresh(); UpdateTabPages(reloaded); _workspace.Commit(); }