// Precondition: User clicks on the edit patron control // Postcondition: Edited patron is saved to the library. private void patronToolStripMenuItem1_Click(object sender, EventArgs e) { // new edit patron form EditPatronForm newEditPatForm = new EditPatronForm(_lib.GetPatronsList()); DialogResult result = newEditPatForm.ShowDialog(); // Show form as dialog and store result if (result == DialogResult.OK) // Only add if OK { // The patron object to be edited LibraryPatron selectedPatron = _lib.GetPatronsList().ElementAt(newEditPatForm.PatronIndex); // Walk thru array in search of patron foreach (LibraryPatron i in _lib.GetPatronsList()) { // Condition that patron is found if (selectedPatron == i) { i.PatronID = newEditPatForm.PatronID; // Set new ID i.PatronName = newEditPatForm.PatronName; // Set new Name } } } newEditPatForm.Dispose(); // Good .NET practice - will get garbage collected anyway }
//-------------------------------------------------------------------------------------------------------------------------------- //to edit the patron //Preconditions: user clicks edit then clicks patron. user must select item from combo box //Postconditions: dialog box comes up with current information loaded into it. user can then change information private void patronToolStripMenuItem1_Click(object sender, EventArgs e) { List <LibraryPatron> patrons; // List of patrons patrons = lib.GetPatronsList(); EditPatronForm editPatronForm = new EditPatronForm(patrons); DialogResult result1 = editPatronForm.ShowDialog(); if (result1 == DialogResult.OK) { PatronForm patronForm = new PatronForm(); patronForm.PatronName = patrons[editPatronForm.PatronIndex].PatronName; patronForm.PatronID = patrons[editPatronForm.PatronIndex].PatronID; DialogResult result2 = patronForm.ShowDialog(); if (result2 == DialogResult.OK) { patrons[editPatronForm.PatronIndex].PatronName = patronForm.PatronName; patrons[editPatronForm.PatronIndex].PatronID = patronForm.PatronID; } } }
//Precondition: Edit, Patron item are activated //Postcondition: The edit patron form is displayed private void patronToolStripMenuItem1_Click(object sender, EventArgs e) { List <LibraryPatron> patrons; // List of patrons patrons = _lib.GetPatronsList(); if ((patrons.Count() == 0)) // Must have items and patrons { MessageBox.Show("Must have items and patrons to edit!", "Check Out Error"); } else { EditPatronForm patronForm = new EditPatronForm(patrons); DialogResult result = patronForm.ShowDialog(); } }
private void patronToolStripMenuItem1_Click(object sender, EventArgs e) { List <LibraryPatron> patrons; // List of patrons patrons = _lib.GetPatronsList(); // gets list of patrons from library EditPatronForm editPatronForm = new EditPatronForm(patrons); // pass patrons to the form PatronForm editSelectedPatron = new PatronForm(); // create a new patron form DialogResult result = editPatronForm.ShowDialog(); // Show form as dialog and store result // ensure that user clicked Ok if (result == DialogResult.OK) { try { LibraryPatron selectedPatron = patrons[editPatronForm.PatronIndex]; // stores selected patron editSelectedPatron.PatronName = selectedPatron.PatronName; // name of the selected patron editSelectedPatron.PatronID = selectedPatron.PatronID; // ID of the selected patron result = editSelectedPatron.ShowDialog(); // show form as dialog for selected patron _lib._patrons.RemoveAt(editPatronForm.PatronIndex); // the patron being edited is removed LibraryPatron editedPatron = new LibraryPatron(editSelectedPatron.PatronName, editSelectedPatron.PatronID); _lib._patrons.Insert(editPatronForm.PatronIndex, editedPatron); // patron with edited information is added } catch (ArgumentOutOfRangeException) { MessageBox.Show("Select Patron!"); // error is no patron is selected } } editPatronForm.Dispose(); // Good .NET practice - will get garbage collected anyway }