/// <summary> /// When a row of the list view is selected, display all of its detabe form info /// </summary> /// <param name="rf"></param> private void displaySelected(RebateForm rf) { tbFName.Text = rf.FirstName; tbMName.Text = rf.MName; tbLName.Text = rf.LastName; tbAddress1.Text = rf.Address1; tbAddress2.Text = rf.Address2; tbCity.Text = rf.City; tbState.Text = rf.State; tbZip.Text = rf.Zip; if (rf.Gender == 'M') { cbM.Checked = true; } else if (rf.Gender == 'F') { cbF.Checked = true; } tbPhone.Text = rf.Phone; tbEmail.Text = rf.Email; if (rf.Proof) { cbProof.Checked = true; } datePicker.Value = rf.DateReceived; }
/// <summary> /// Create RebateForm object and save all the text boxes data /// </summary> /// <returns>RebateForm object</returns> private RebateForm collectDataFromInput() { // Save all the date to become an RebateForm object RebateForm rb = new RebateForm(); rb.FirstName = tbFName.Text; rb.MName = tbMName.Text; rb.LastName = tbLName.Text; rb.Address1 = tbAddress1.Text; rb.Address2 = tbAddress2.Text; rb.City = tbCity.Text; rb.State = tbState.Text; rb.Zip = tbZip.Text; if (cbM.Checked) { rb.Gender = 'M'; } if (cbF.Checked) { rb.Gender = 'F'; } rb.Phone = tbPhone.Text; rb.Email = tbEmail.Text; if (cbProof.Checked) { rb.Proof = true; } else { rb.Proof = false; } rb.DateReceived = datePicker.Value; return(rb); }
/// <summary> /// Add a rebate form to the list view /// </summary> /// <param name="rf"></param> private void addToListView(RebateForm rf) { var row = new String[] { rf.FirstName, rf.LastName, rf.Phone }; var lvi = new ListViewItem(row); // Add the object to the Tag property so that it can be used to be selected lvi.Tag = rf; // Add the item to the list view control listView.Items.Add(lvi); }
private void btSave_Click_1(object sender, EventArgs e) { RebateForm rb = collectDataFromInput(); if (checkInput()) // Check each input { if (dupForm(rb)) // No duplicate record { if (modifySave) // Modifying { // Update the Rebate Form List forms[forms.IndexOf((RebateForm)listView.SelectedItems[0].Tag)] = rb; // Update the list view listView.SelectedItems[0].SubItems[0].Text = rb.FirstName; listView.SelectedItems[0].SubItems[1].Text = rb.LastName; listView.SelectedItems[0].SubItems[2].Text = rb.Phone; modifySave = false; disableTB(); btSave.Enabled = false; // Write to File. FileIO.saveToFile(fileName, forms); lbWarning.Text = "DATA SUCCESSFULLY SAVED"; lbWarning.Visible = true; clearDataFields(); } else // Inputting new { // Only record StartTime, EndTime and Backcount fields when creating new, remain unchanged during modification rb.StartTime = startTime; rb.EndTime = DateTime.Now; rb.Backcount = backCount; // Add to the forms list. forms.Add(rb); // Display on the ListView addToListView(rb); // Write to File. FileIO.saveToFile(fileName, forms); lbWarning.Text = "RECORD SUCCESSFULLY ADDED"; lbWarning.Visible = true; clearDataFields(); } } } }
/// <summary> /// Check if the object with same first name, last name and phone number exists /// </summary> /// <param name="rf"></param> /// <returns> True if existed </returns> private bool dupForm(RebateForm rf) { foreach (RebateForm form in forms) { if (modifySave && rf.FirstName == preModified[0] && rf.LastName == preModified[1] && rf.Phone == preModified[2]) { return(true); } // Duplicate if (rf.FirstName == form.FirstName && rf.LastName == form.LastName && rf.Phone == form.Phone) { lbWarning.Text = "INVALID: RECORD EXISTS!"; lbWarning.Visible = true; return(false); } } return(true); }
public static List <RebateForm> loadFromFile(String fileName) { List <RebateForm> forms = new List <RebateForm>(); System.IO.StreamReader file = new System.IO.StreamReader(fileName); String l; // Let l be the entire line when read the file line by line while ((l = file.ReadLine()) != null) { String[] fields = l.Split(','); RebateForm rb = new RebateForm(); rb.FirstName = fields[0]; rb.MName = fields[1]; rb.LastName = fields[2]; rb.Address1 = fields[3]; rb.Address2 = fields[4]; rb.City = fields[5]; rb.State = fields[6]; rb.Zip = fields[7]; rb.Gender = fields[8][0]; rb.Phone = fields[9]; rb.Email = fields[10]; if (fields[11][0].ToString().Equals("TRUE")) { rb.Proof = true; } else { rb.Proof = false; } rb.DateReceived = Convert.ToDateTime(fields[12]); forms.Add(rb); // Add to the list } file.Close(); return(forms); }