SHARE
TWEET

Lina WPF CRUD app

lkhaled Dec 8th, 2019 (edited) 73 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Text;
  5. using System.Threading.Tasks;
  6. using System.Windows;
  7. using System.Windows.Controls;
  8. using System.Windows.Data;
  9. using System.Windows.Documents;
  10. using System.Windows.Input;
  11. using System.Windows.Media;
  12. using System.Windows.Media.Imaging;
  13. using System.Windows.Navigation;
  14. using System.Windows.Shapes;
  15.  
  16. namespace Shopping_List_Application
  17. {
  18.     /// <summary>
  19.     /// Interaction logic for MainWindow.xaml
  20.     /// </summary>
  21.     public partial class MainWindow : Window
  22.     {
  23.         List<Ingredient> ingredients = new List<Ingredient>();
  24.         List<Equipment> equipments = new List<Equipment>();
  25.         List<OrderIngredient> orders = new List<OrderIngredient>();
  26.         Ingredient ingredient;
  27.         Equipment equipment;
  28.         OrderIngredient order;
  29.  
  30.         public MainWindow()
  31.         {
  32.             InitializeComponent();
  33.             Intialise();
  34.         }
  35.         void Intialise()
  36.         {
  37.             using (var db = new Shopping_ListEntities2())
  38.             {
  39.                 ingredients = db.Ingredients.ToList();
  40.                 equipments = db.Equipments.ToList();
  41.                 orders = db.OrderIngredients.ToList();
  42.                
  43.             }
  44.             ListBoxIngredients.ItemsSource = ingredients;
  45.             ListBoxIngredients.DisplayMemberPath = "IngredientsId";
  46.             ListBoxEquipments.ItemsSource = equipments;
  47.             ListBoxEquipments.DisplayMemberPath = "Quantity";
  48.             ListBoxOrders.ItemsSource = orders;
  49.             ListBoxOrders.DisplayMemberPath = "Quantity";
  50.                      
  51.  
  52.         }
  53.         private void ListBoxIngredients_SelectionChanged(object sender, SelectionChangedEventArgs e)
  54.         {
  55.             ingredient = (Ingredient)ListBoxIngredients.SelectedItem;
  56.             if(ingredient != null)
  57.             {
  58.                  TextBoxId.Text = ingredient.IngredientsId.ToString();
  59.                  TextBoxDescription.Text = ingredient.Ingredient1.ToString();
  60.                  TextBoxQuantity.Text = ingredient.Quantity.ToString();
  61.                
  62.             }
  63.  
  64.         }
  65.         private void ListBoxEqupments_SelectionChanged(object sender, SelectionChangedEventArgs e)
  66.         {
  67.             equipment = (Equipment)ListBoxEquipments.SelectedItem;
  68.             if(equipment != null)
  69.             {
  70.                 TextBoxId.Text = equipment.EquipmentId.ToString();
  71.                 TextBoxDescription.Text = equipment.Equipment1.ToString();
  72.                 TextBoxQuantity.Text = equipment.Quantity.ToString();
  73.             }
  74.         }
  75.         private void ListBoxOrders_SelectionChanged(object sender, SelectionChangedEventArgs e)
  76.         {
  77.             order = (OrderIngredient)ListBoxOrders.SelectedItem;
  78.             if(order !=null)
  79.             {
  80.                 TextBoxId.Text = order.OrderId.ToString();
  81.                 TextBoxDescription.Text = order.Ingredient.ToString();
  82.                 TextBoxQuantity.Text = order.Quantity.ToString();
  83.                 TextBoxOrdered.Text = order.Orderd_On.ToString();
  84.             }
  85.         }
  86.         private void ButtonAdd_Click(object sender, RoutedEventArgs e)
  87.         {
  88.             if (ButtonAdd.Content.ToString() == "Add")
  89.             {
  90.                 ButtonAdd.Content = "Confirm";
  91.                 TextBoxId.Background = Brushes.White;
  92.                 TextBoxDescription.Background = Brushes.White;
  93.                 TextBoxQuantity.Background = Brushes.White;
  94.                 TextBoxDescription.IsReadOnly = false;
  95.                 TextBoxQuantity.IsReadOnly = false;
  96.                 TextBoxId.IsReadOnly = true;
  97.                 TextBoxDescription.Text = "";
  98.                 TextBoxQuantity.Text = "";
  99.             }
  100.             else
  101.             {
  102.                 ButtonAdd.Content = "Add";
  103.                 ButtonAdd.IsEnabled = true;
  104.                 int.TryParse(TextBoxQuantity.Text, out int Quantity);
  105.  
  106.                 var ingredientToAdd = new Ingredient()
  107.                 {
  108.  
  109.                     Ingredient1 = TextBoxDescription.Text,
  110.                     Quantity = Quantity
  111.  
  112.                 };
  113.                 using (var db = new Shopping_ListEntities2())
  114.                 {
  115.                     db.Ingredients.Add(ingredientToAdd);
  116.                     db.SaveChanges();
  117.                     ListBoxIngredients.ItemsSource = null;
  118.                     ingredients = db.Ingredients.ToList();
  119.                     ListBoxIngredients.ItemsSource = ingredients;
  120.                 }
  121.  
  122.             }
  123.             if (ButtonAdd.Content.ToString() == "Add")
  124.             {
  125.                 ButtonAdd.Content = "Confirm";
  126.                 TextBoxId.Background = Brushes.White;
  127.                 TextBoxDescription.Background = Brushes.White;
  128.                 TextBoxDescription.IsReadOnly = false;
  129.                 TextBoxQuantity.IsReadOnly = false;
  130.                 TextBoxId.IsReadOnly = true;
  131.                 TextBoxDescription.Text = "";
  132.                 TextBoxQuantity.Text = "";
  133.             } else
  134.             {
  135.                 ButtonAdd.Content = "Add";
  136.                 ButtonAdd.IsEnabled = true;
  137.                 int.TryParse(TextBoxQuantity.Text, out int Quantity);
  138.  
  139.                 var equipmentToAdd = new Equipment()
  140.                 {
  141.                     Equipment1 = TextBoxDescription.Text,
  142.                     Quantity = Quantity
  143.                 };
  144.                 using (var db = new Shopping_ListEntities2())
  145.                 {
  146.                     db.Equipments.Add(equipmentToAdd);
  147.                     db.SaveChanges();
  148.                     ListBoxEquipments.ItemsSource = null;
  149.                     equipments = db.Equipments.ToList();
  150.                     ListBoxEquipments.ItemsSource = equipments;
  151.  
  152.                 }
  153.             }
  154.             if (ButtonAdd.Content.ToString() == "Add")
  155.             {
  156.                 ButtonAdd.Content = "Confrim";
  157.                 TextBoxId.Background = Brushes.White;
  158.                 TextBoxDescription.Background = Brushes.White;
  159.                 TextBoxDescription.IsReadOnly = false;
  160.                 TextBoxQuantity.IsReadOnly = false;
  161.                 TextBoxId.IsReadOnly = true;
  162.                 TextBoxDescription.Text = "";
  163.                 TextBoxQuantity.Text = "";
  164.             } else
  165.             {
  166.                 ButtonAdd.Content = "Add";
  167.                 ButtonAdd.IsEnabled = true;
  168.                 int.TryParse(TextBoxQuantity.Text, out int Quantity);
  169.  
  170.                 var orderToAdd = new OrderIngredient()
  171.                 {
  172.                     Ingredient = TextBoxDescription.Text,
  173.                     Quantity = Quantity
  174.                 };
  175.                 using(var db = new Shopping_ListEntities2())
  176.                 {
  177.                     db.OrderIngredients.Add(orderToAdd);
  178.                     db.SaveChanges();
  179.                     ListBoxOrders.ItemsSource = null;
  180.                     orders = db.OrderIngredients.ToList();
  181.                     ListBoxOrders.ItemsSource = orders;
  182.                    
  183.                 }
  184.             }
  185.        
  186.         }
  187.         //code for editing database fields
  188.         private void ButtonEdit_Click(object sender, RoutedEventArgs e)
  189.         {
  190.             if (ButtonEdit.Content.ToString() == "Edit")
  191.             {
  192.                 ingredient = (Ingredient)ListBoxIngredients.SelectedItem;
  193.                 TextBoxDescription.IsReadOnly = false;
  194.                 TextBoxQuantity.IsReadOnly = false;
  195.                 ButtonEdit.Content = "Save";
  196.                 TextBoxDescription.Background = Brushes.White;
  197.                 TextBoxQuantity.Background = Brushes.White;
  198.             }
  199.             else
  200.             {
  201.                 using (var db = new Shopping_ListEntities2())
  202.                 {
  203.                     var ingredientToEdit = db.Ingredients.Find(ingredient.IngredientsId);
  204.                     ingredientToEdit.Ingredient1 = TextBoxDescription.Text;
  205.                     int.TryParse(TextBoxQuantity.Text, out int Quantity);
  206.                     db.SaveChanges();
  207.                 }
  208.             }
  209.             if (ButtonEdit.Content.ToString() == "Edit")
  210.             {
  211.                 equipment = (Equipment)ListBoxEquipments.SelectedItem;
  212.                 TextBoxDescription.IsReadOnly = false;
  213.                 TextBoxQuantity.IsReadOnly = false;
  214.                 ButtonEdit.Content = "Save";
  215.                 TextBoxDescription.Background = Brushes.White;
  216.                 TextBoxQuantity.Background = Brushes.White;
  217.             }
  218.             else
  219.             {
  220.                 using (var db = new Shopping_ListEntities2())
  221.                 {
  222.                     var equipmentToEdit = db.Equipments.Find(equipment.Equipment1);
  223.                     equipmentToEdit.Equipment1 = TextBoxDescription.Text;
  224.                     int.TryParse(TextBoxQuantity.Text, out int Quantity);
  225.                     db.SaveChanges();
  226.                 }
  227.             }
  228.             if (ButtonEdit.Content.ToString() == "Edit")
  229.             {
  230.                 order = (OrderIngredient)ListBoxOrders.SelectedItem;
  231.                 TextBoxDescription.IsReadOnly = false;
  232.                 TextBoxQuantity.IsReadOnly = false;
  233.                 ButtonEdit.Content = "Save";
  234.                 TextBoxDescription.Background = Brushes.White;
  235.                 TextBoxQuantity.Background = Brushes.White;
  236.             }
  237.             else
  238.             {
  239.                 using (var db = new Shopping_ListEntities2())
  240.                 {
  241.                     var orderToEdit = db.OrderIngredients.Find(order.Ingredient);
  242.                     orderToEdit.Ingredient = TextBoxDescription.Text;
  243.                     int.TryParse(TextBoxQuantity.Text, out int Quantity);
  244.                     db.SaveChanges();
  245.                 }
  246.             }
  247.  
  248.         }
  249.  
  250.         private void ButtonDelete_Click(object sender, RoutedEventArgs e)
  251.         {
  252.             if(ButtonDelete.Content.ToString() == "Delete")
  253.             {
  254.                 ButtonDelete.Content = "Confirm";
  255.                 TextBoxId.Background = Brushes.OrangeRed;
  256.                 TextBoxDescription.Background = Brushes.DarkOrange;
  257.             }else
  258.             {
  259.                 if(ingredients != null)
  260.                 {
  261.                     using(var db = new Shopping_ListEntities2())
  262.                     {
  263.                         var ingredientToRemove = db.Ingredients.Find(ingredient.IngredientsId);
  264.                         db.Ingredients.Remove(ingredientToRemove);
  265.                         ListBoxIngredients.ItemsSource = null;
  266.                         ingredients = db.Ingredients.ToList();
  267.                         ListBoxIngredients.ItemsSource = ingredients;
  268.                         ButtonDelete.Content = "Delete";
  269.                         TextBoxDescription.IsReadOnly = true;
  270.                         TextBoxId.Text = "";
  271.                         TextBoxDescription.Text = "";
  272.                         TextBoxQuantity.Text = "";
  273.                     }
  274.                 }
  275.             }
  276.             if(ButtonDelete.Content.ToString() == "Delete")
  277.             {
  278.                 ButtonDelete.Content = "Confirm";
  279.                 TextBoxId.Background = Brushes.OrangeRed;
  280.                 TextBoxDescription.Background = Brushes.DarkOrange;
  281.  
  282.             }
  283.             else
  284.             {
  285.                 if(equipments != null)
  286.                 {
  287.                     using(var db = new Shopping_ListEntities2())
  288.                     {
  289.                         var equipmentToRemove = db.Equipments.Find(equipment.EquipmentId);
  290.                         db.Equipments.Remove(equipmentToRemove);
  291.                         ListBoxEquipments.ItemsSource = null;
  292.                         equipments = db.Equipments.ToList();
  293.                         ListBoxEquipments.ItemsSource = equipments;
  294.                         ButtonDelete.Content = "Delete";
  295.                         TextBoxId.Text = "";
  296.                         TextBoxDescription.Text = "";
  297.                         TextBoxQuantity.Text = "";
  298.                     }
  299.                 }
  300.             }
  301.             if(ButtonDelete.Content.ToString() == "Delete")
  302.             {
  303.                 ButtonDelete.Content = "Confirm";
  304.                 TextBoxId.Background = Brushes.OrangeRed;
  305.                 TextBoxDescription.Background = Brushes.DarkOrange;
  306.             }
  307.             else
  308.             {
  309.                 if (orders != null)
  310.                 {
  311.                     using (var db = new Shopping_ListEntities2())
  312.                     {
  313.                         var orderToRemove = db.OrderIngredients.Find(order.OrderId);
  314.                         db.OrderIngredients.Remove(orderToRemove);
  315.                         ListBoxOrders.ItemsSource = null;
  316.                         orders = db.OrderIngredients.ToList();
  317.                         ListBoxOrders.ItemsSource = orders;
  318.                         ButtonDelete.Content = "Delete";
  319.                         TextBoxId.Text = "";
  320.                         TextBoxDescription.Text = "";
  321.                         TextBoxQuantity.Text = "";
  322.                         TextBoxOrdered.Text = "";
  323.                     }
  324.                 }
  325.             }
  326.  
  327.         }
  328.     }
  329. }
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top