private void GetItems(UnidaysDiscountChallenge unidaysDiscountChallenge, List <Item> items) { //Remove all the products lvBasket.Items.Clear(); if (items.Count > 0) { //Foreach item that matches filter, display on UI foreach (Item item in items) { //Create 3 textboxs, item name, id and price TextBlock tbItem = new TextBlock { Text = item.GetName(), Foreground = Brushes.Black, FontSize = 22, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, Margin = new Thickness(5) }; tbItem.SetValue(Grid.ColumnProperty, 1); TextBlock tbQTY = new TextBlock { Text = item.GetQuanity().ToString() + "x", Foreground = Brushes.LightGray, FontSize = 15, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, Margin = new Thickness(5) }; tbQTY.SetValue(Grid.ColumnProperty, 0); TextBlock tbPrice = new TextBlock { Text = "£" + item.GetCost().ToString(), Foreground = Brushes.Black, FontSize = 18, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, Margin = new Thickness(5) }; tbPrice.SetValue(Grid.ColumnProperty, 2); Button button = new Button { Content = "Delete", Background = Brushes.Red, BorderBrush = Brushes.Red, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Right, Height = 35, Margin = new Thickness(5) }; button.SetValue(Grid.ColumnProperty, 3); button.Click += (sender, EventArgs) => { //Remove the item from the basket unidaysDiscountChallenge.RemoveFromBasket(item); //Reload ui GetItems(unidaysDiscountChallenge, items); tbBasketSize.Text = unidaysDiscountChallenge.GetBasketSize().ToString(); }; Grid grid = new Grid(); //Create 4 columns ColumnDefinition col1 = new ColumnDefinition { Width = new GridLength(75) }; ColumnDefinition col2 = new ColumnDefinition { Width = new GridLength(150) }; ColumnDefinition col3 = new ColumnDefinition { Width = new GridLength(100) }; ColumnDefinition col4 = new ColumnDefinition { Width = new GridLength(100) }; grid.ColumnDefinitions.Add(col1); grid.ColumnDefinitions.Add(col2); grid.ColumnDefinitions.Add(col3); grid.ColumnDefinitions.Add(col4); grid.Children.Add(tbQTY); grid.Children.Add(tbItem); grid.Children.Add(tbPrice); grid.Children.Add(button); //Add pannel to listview lvBasket.Items.Add(grid); } } else { //If there are no items in the basket TextBlock tbResponse = new TextBlock { Text = "No items added to basket!", Foreground = Brushes.Black, FontSize = 25, VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Center, Margin = new Thickness(5) }; lvBasket.Items.Add(tbResponse); } }