/// <summary> /// event is based on previous methods. if update will update description and or cost based on itemCode. if new will add new item with auto /// generated itemCode, inputed descritpion and cost. If delete will delete based on ItemCode /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void BtnAdd_Click(object sender, RoutedEventArgs e) { _item.ItemDesc = textBoxDescription.Text; _item.ItemCode = _logic.GetId(); if (textBoxDescription.Text == string.Empty) { _item.ItemDesc = "NULL"; } if (radioButtonAdd.IsChecked == true && ValidateAdd()) { _logic.AddItem(_item); _items.Add(_item); } if (radioButtonDelete.IsChecked == true && ValidateDelete()) { _logic.DeleteItem(_item); _items.Remove(_items.FirstOrDefault(x => x.ItemCode == int.Parse(textBoxCode.Text))); } if (radioButtonUpdate.IsChecked == true && ValidateUpdate()) { _logic.UpdateItem(_item); _items = _logic.GetItems(); } _item = new ItemDescription(); UpdateTable(); }
/// <summary> /// Adds item to database, list, and datagrid /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void addItemButton_Click(object sender, RoutedEventArgs e) { try { ErrorItemCode.Content = ErrorItemCost.Content = ErrorItemDesc.Content = ""; if (itemCodeText.Text == "") { ErrorItemCode.Content = "Name cannot be empty."; return; } else if (itemDescText.Text == "") { ErrorItemDesc.Content = "Item description cannot be empty."; return; } string pKey = itemCodeText.Text; string iDesc = itemDescText.Text; double cost = 0; //if string to double failed if (!double.TryParse(itemCostText.Text, out cost)) { ErrorItemCost.Content = "Value must only be numbers and one decimal."; return; } Item newItem = myLogic.AddItem(pKey, iDesc, cost); if (newItem == null) { ErrorItemCode.Content = "That Item Name has already been taken"; return; } RefreshItemDataGrid(); } catch (Exception ex) { HandleError(MethodInfo.GetCurrentMethod().DeclaringType.Name, MethodInfo.GetCurrentMethod().Name, ex.Message); } }